I just configures BESS on my home installation. I get many ERRORs in the log for update_time_segment, set_value and a few others.
My config looks like this:
influxdb:
url: http://192.168.11.39:8086/api/v2/query
bucket: bess
username: bess
password: <password>
home:
consumption: 3.5
currency: SEK
consumption_strategy: sensor
max_fuse_current: 20
voltage: 230
safety_margin_factor: 1
phase_count: 3
battery:
total_capacity: 50
min_soc: 10
max_soc: 95
max_charge_discharge_power: 15
cycle_cost: 0.5
min_action_profit_threshold: 8
temperature_derating:
enabled: false
weather_entity: ""
derating_curve:
- - -1
- 20
- - 0
- 20
- - 5
- 50
- - 10
- 80
- - 15
- 100
electricity_price:
area: SE3
markup_rate: 0.08
vat_multiplier: 1.25
additional_costs: 1.03
tax_reduction: 0
energy_provider:
provider: nordpool
nordpool:
today_entity: sensor.nordpool
tomorrow_entity: sensor.nordpool
nordpool_official:
config_entry_id: <ID>
octopus:
import_today_entity: ""
import_tomorrow_entity: ""
export_today_entity: ""
export_tomorrow_entity: ""
growatt:
device_id: <id>
sensors:
battery_soc: sensor.growatt_inverter_battery_soc
battery_charge_stop_soc: number.growatt_vaxelriktare_battery_charge_soc_limit
battery_discharge_stop_soc: number.growatt_vaxelriktare_battery_discharge_soc_limit_on_grid
battery_charging_power_rate: sensor.growatt_inverter_battery_charge_power
battery_discharging_power_rate: sensor.growatt_inverter_battery_discharge_power
grid_charge: switch.growatt_vaxelriktare_charge_from_grid
pv_power: sensor.growatt_vaxelriktare_internal_wattage
local_load_power: sensor.growatt_vaxelriktare_local_load_power
import_power: sensor.growatt_vaxelriktare_import_power
export_power: sensor.growatt_vaxelriktare_export_power
battery_charge_power: sensor.growatt_inverter_battery_charge_power
battery_discharge_power: sensor.growatt_inverter_battery_discharge_power
output_power: sensor.growatt_vaxelriktare_output_power
self_power: sensor.growatt_vaxelriktare_self_power
system_power: sensor.growatt_vaxelriktare_system_power
current_l1: sensor.growatt_inverter_grid_current_l1
current_l2: sensor.growatt_inverter_grid_current_l2
current_l3: sensor.growatt_inverter_grid_current_l3
lifetime_solar_energy: sensor.growatt_vaxelriktare_lifetime_total_solar_energy
lifetime_load_consumption: sensor.growatt_vaxelriktare_lifetime_total_load_consumption
lifetime_self_consumption: sensor.growatt_vaxelriktare_lifetime_self_consumption
lifetime_import_from_grid: sensor.growatt_vaxelriktare_lifetime_import_from_grid
lifetime_export_to_grid: sensor.growatt_vaxelriktare_lifetime_total_export_to_grid
lifetime_battery_charged: sensor.growatt_vaxelriktare_lifetime_total_all_batteries_charged
lifetime_battery_discharged: sensor.growatt_vaxelriktare_lifetime_total_all_batteries_discharged
lifetime_system_production: sensor.growatt_vaxelriktare_lifetime_system_production
ev_energy_meter: sensor.laddbox_forbrukning
48h_avg_grid_import: sensor.48h_average_grid_import_power
solar_forecast_today: sensor.solcast_pv_forecast_forecast_today
solar_forecast_tomorrow: sensor.solcast_pv_forecast_forecast_tomorrow
Starting uvicorn...
/app/api.py:289: FastAPIDeprecationWarning: `regex` has been deprecated, please use `pattern` instead
resolution: str = Query("quarter-hourly", regex="^(hourly|quarter-hourly)$"),
2026-03-24 03:38:17 | INFO | log_config:118 - Ingress prefix:
2026-03-24 03:38:17 | INFO | log_config:118 - Loaded options from /data/options.json
2026-03-24 03:38:17 | INFO | log_config:118 - Initializing HA controller with 30 sensor configurations
2026-03-24 03:38:17 | INFO | core.bess.ha_api_controller:130 - Initialized HomeAssistantAPIController with 30 sensor mappings
2026-03-24 03:38:17 | INFO | log_config:118 - Timezone set from HA: Europe/Stockholm
2026-03-24 03:38:17 | INFO | core.bess.ha_api_controller:947 - Disabled test mode
2026-03-24 03:38:17 | INFO | core.bess.sensor_collector:89 - Resolved 10 sensor entity IDs for InfluxDB queries
2026-03-24 03:38:17 | INFO | core.bess.sensor_collector:109 - Resolved 6 power sensor entity IDs for gap-filling
2026-03-24 03:38:17 | INFO | core.bess.battery_system_manager:198 - Using legacy/custom Nordpool sensor integration
2026-03-24 03:38:17 | INFO | core.bess.runtime_failure_tracker:60 - RuntimeFailureTracker initialized
2026-03-24 03:38:17 | INFO | core.bess.battery_system_manager:2327 - Settings updated successfully
2026-03-24 03:38:17 | INFO | log_config:118 - All settings applied successfully
2026-03-24 03:38:17 | INFO | log_config:118 - BESS Controller initialized with early settings loading
2026-03-24 03:38:17 | INFO | core.bess.power_monitor:74 - Initialized HomePowerMonitor with:
Max power per phase: 4600.0W
Max charging power: 15000.0W
Target charging rate: 40%
2026-03-24 03:38:17 | INFO | core.bess.battery_system_manager:2132 - Running system health check...
2026-03-24 03:38:17 | WARNING | core.bess.influxdb_helper:232 - No header row found in InfluxDB response
2026-03-24 03:38:17 | INFO | core.bess.battery_system_manager:2138 - System Health Check Results:
2026-03-24 03:38:17 | INFO | core.bess.battery_system_manager:2139 - ========================================
2026-03-24 03:38:17 | INFO | core.bess.battery_system_manager:2151 - ✓ [REQUIRED] Electricity Price Data: OK
2026-03-24 03:38:17 | INFO | core.bess.battery_system_manager:2151 - ✓ [REQUIRED] Battery Control: OK
2026-03-24 03:38:17 | INFO | core.bess.battery_system_manager:2151 - ✓ [REQUIRED] Battery Monitoring: OK
2026-03-24 03:38:17 | INFO | core.bess.battery_system_manager:2151 - ✓ [REQUIRED] Energy Monitoring: OK
2026-03-24 03:38:17 | INFO | core.bess.battery_system_manager:2151 - ✓ [OPTIONAL] Energy Prediction: OK
2026-03-24 03:38:17 | INFO | core.bess.battery_system_manager:2151 - ✓ [OPTIONAL] Power Monitoring: OK
2026-03-24 03:38:17 | INFO | core.bess.battery_system_manager:2151 - ✓ [OPTIONAL] Historical Data Access: OK
2026-03-24 03:38:17 | INFO | core.bess.battery_system_manager:2169 - ========================================
2026-03-24 03:38:17 | INFO | core.bess.battery_system_manager:2190 - ✓ All required sensors are functional - system fully operational
2026-03-24 03:38:17 | INFO | core.bess.battery_system_manager:218 - Syncing SOC limits from config to inverter...
2026-03-24 03:38:17 | WARNING | core.bess.ha_api_controller:560 - API request to http://supervisor/core/api/services/number/set_value failed on attempt 1/4: 500 Server Error: Internal Server Error for url: http://supervisor/core/api/services/number/set_value. Retrying in 2 seconds...
2026-03-24 03:38:19 | WARNING | core.bess.ha_api_controller:560 - API request to http://supervisor/core/api/services/number/set_value failed on attempt 2/4: 500 Server Error: Internal Server Error for url: http://supervisor/core/api/services/number/set_value. Retrying in 4 seconds...
2026-03-24 03:38:23 | WARNING | core.bess.ha_api_controller:560 - API request to http://supervisor/core/api/services/number/set_value failed on attempt 3/4: 500 Server Error: Internal Server Error for url: http://supervisor/core/api/services/number/set_value. Retrying in 8 seconds...
2026-03-24 03:38:32 | ERROR | core.bess.ha_api_controller:570 - API request to /api/services/number/set_value failed on final attempt 4/4: 500 Server Error: Internal Server Error for url: http://supervisor/core/api/services/number/set_value
2026-03-24 03:38:32 | WARNING | core.bess.runtime_failure_tracker:91 - Runtime failure recorded [battery_control]: Call number.set_value - 500 Server Error: Internal Server Error for url: http://supervisor/core/api/services/number/set_value
2026-03-24 03:38:32 | WARNING | core.bess.battery_system_manager:251 - Could not sync SOC limits to inverter at startup (inverter may be temporarily unreachable): 500 Server Error: Internal Server Error for url: http://supervisor/core/api/services/number/set_value. Inverter will retain its current limits. System startup will continue.
2026-03-24 03:38:32 | INFO | core.bess.battery_system_manager:479 - Reading current TOU schedule from inverter
2026-03-24 03:38:32 | WARNING | core.bess.ha_api_controller:560 - API request to http://supervisor/core/api/services/growatt_server/read_time_segments?return_response=true failed on attempt 1/4: 500 Server Error: Internal Server Error for url: http://supervisor/core/api/services/growatt_server/read_time_segments?return_response=true. Retrying in 2 seconds...
2026-03-24 03:38:34 | WARNING | core.bess.ha_api_controller:560 - API request to http://supervisor/core/api/services/growatt_server/read_time_segments?return_response=true failed on attempt 2/4: 500 Server Error: Internal Server Error for url: http://supervisor/core/api/services/growatt_server/read_time_segments?return_response=true. Retrying in 4 seconds...
2026-03-24 03:38:38 | WARNING | core.bess.ha_api_controller:560 - API request to http://supervisor/core/api/services/growatt_server/read_time_segments?return_response=true failed on attempt 3/4: 500 Server Error: Internal Server Error for url: http://supervisor/core/api/services/growatt_server/read_time_segments?return_response=true. Retrying in 8 seconds...
2026-03-24 03:38:46 | ERROR | core.bess.ha_api_controller:570 - API request to /api/services/growatt_server/read_time_segments?return_response=true failed on final attempt 4/4: 500 Server Error: Internal Server Error for url: http://supervisor/core/api/services/growatt_server/read_time_segments?return_response=true
2026-03-24 03:38:46 | WARNING | core.bess.runtime_failure_tracker:91 - Runtime failure recorded [inverter_control]: Call growatt_server.read_time_segments - 500 Server Error: Internal Server Error for url: http://supervisor/core/api/services/growatt_server/read_time_segments?return_response=true
2026-03-24 03:38:46 | WARNING | core.bess.ha_api_controller:941 - Failed to read time segments: 500 Server Error: Internal Server Error for url: http://supervisor/core/api/services/growatt_server/read_time_segments?return_response=true
2026-03-24 03:38:46 | INFO | core.bess.growatt_schedule:1135 - Validating TOU intervals read from inverter...
2026-03-24 03:38:46 | INFO | core.bess.growatt_schedule:1145 - ✅ TOU intervals from inverter are already in correct chronological order
2026-03-24 03:38:46 | INFO | core.bess.growatt_schedule:1160 - No active TOU segments found in inverter
2026-03-24 03:38:46 | INFO | core.bess.battery_system_manager:503 - Fetching historical data - current period: 14 (03:30)
2026-03-24 03:38:46 | INFO | core.bess.price_manager:624 - Tomorrow prices not available (No price data available for 2026-03-25), using today only (96 periods)
2026-03-24 03:38:46 | INFO | core.bess.sensor_collector:392 - Loading batch data for 2026-03-24 (10 sensors)
2026-03-24 03:38:46 | INFO | core.bess.influxdb_helper:337 - Batch fetching sensor data for 2026-03-24 (10 sensors, 96 periods)
2026-03-24 03:38:46 | INFO | core.bess.influxdb_helper:342 - Querying sensors: ['growatt_vaxelriktare_lifetime_total_all_batteries_charged', 'growatt_vaxelriktare_lifetime_total_all_batteries_discharged', 'growatt_vaxelriktare_lifetime_total_solar_energy', 'growatt_vaxelriktare_lifetime_total_load_consumption', 'growatt_vaxelriktare_lifetime_import_from_grid', 'growatt_vaxelriktare_lifetime_total_export_to_grid', 'growatt_vaxelriktare_lifetime_system_production', 'growatt_vaxelriktare_lifetime_self_consumption', 'laddbox_forbrukning', 'growatt_inverter_battery_soc']
2026-03-24 03:38:46 | INFO | core.bess.influxdb_helper:365 - InfluxDB returned 1 lines total
2026-03-24 03:38:46 | INFO | core.bess.influxdb_helper:367 - InfluxDB returned 1 data lines (non-header)
2026-03-24 03:38:46 | INFO | core.bess.influxdb_helper:381 - Sensor counts in response: {}
2026-03-24 03:38:46 | WARNING | core.bess.influxdb_helper:383 - Zero sensors found. First 3 data lines: ['']
2026-03-24 03:38:46 | WARNING | core.bess.influxdb_helper:445 - No header row found in batch InfluxDB response
2026-03-24 03:38:46 | INFO | core.bess.influxdb_helper:392 - Batch fetch complete: got data for 0 periods
2026-03-24 03:38:46 | WARNING | core.bess.sensor_collector:403 - Batch data for 2026-03-24 returned no periods — InfluxDB query matched no sensor data (check sensor names, bucket, and time range). Not caching empty result so next period will retry.
2026-03-24 03:38:46 | ERROR | core.bess.sensor_collector:549 - Failed to load batch data for 2026-03-24
2026-03-24 03:38:46 | WARNING | core.bess.battery_system_manager:575 - Failed to collect/store data for period 0 (00:00): No InfluxDB data available for period 0. Cannot calculate energy flows.
2026-03-24 03:38:46 | INFO | core.bess.sensor_collector:392 - Loading batch data for 2026-03-24 (10 sensors)
2026-03-24 03:38:46 | INFO | core.bess.influxdb_helper:337 - Batch fetching sensor data for 2026-03-24 (10 sensors, 96 periods)
2026-03-24 03:38:46 | INFO | core.bess.influxdb_helper:342 - Querying sensors: ['growatt_vaxelriktare_lifetime_total_all_batteries_charged', 'growatt_vaxelriktare_lifetime_total_all_batteries_discharged', 'growatt_vaxelriktare_lifetime_total_solar_energy', 'growatt_vaxelriktare_lifetime_total_load_consumption', 'growatt_vaxelriktare_lifetime_import_from_grid', 'growatt_vaxelriktare_lifetime_total_export_to_grid', 'growatt_vaxelriktare_lifetime_system_production', 'growatt_vaxelriktare_lifetime_self_consumption', 'laddbox_forbrukning', 'growatt_inverter_battery_soc']
2026-03-24 03:38:46 | INFO | core.bess.influxdb_helper:365 - InfluxDB returned 1 lines total
2026-03-24 03:38:46 | INFO | core.bess.influxdb_helper:367 - InfluxDB returned 1 data lines (non-header)
2026-03-24 03:38:46 | INFO | core.bess.influxdb_helper:381 - Sensor counts in response: {}
2026-03-24 03:38:46 | WARNING | core.bess.influxdb_helper:383 - Zero sensors found. First 3 data lines: ['']
2026-03-24 03:38:46 | WARNING | core.bess.influxdb_helper:445 - No header row found in batch InfluxDB response
2026-03-24 03:38:46 | INFO | core.bess.influxdb_helper:392 - Batch fetch complete: got data for 0 periods
2026-03-24 03:38:46 | WARNING | core.bess.sensor_collector:403 - Batch data for 2026-03-24 returned no periods — InfluxDB query matched no sensor data (check sensor names, bucket, and time range). Not caching empty result so next period will retry.
2026-03-24 03:38:46 | ERROR | core.bess.sensor_collector:549 - Failed to load batch data for 2026-03-24
2026-03-24 03:38:46 | WARNING | core.bess.battery_system_manager:575 - Failed to collect/store data for period 1 (00:15): No InfluxDB data available for period 1. Cannot calculate energy flows.
2026-03-24 03:38:46 | INFO | core.bess.sensor_collector:392 - Loading batch data for 2026-03-24 (10 sensors)
2026-03-24 03:38:46 | INFO | core.bess.influxdb_helper:337 - Batch fetching sensor data for 2026-03-24 (10 sensors, 96 periods)
2026-03-24 03:38:46 | INFO | core.bess.influxdb_helper:342 - Querying sensors: ['growatt_vaxelriktare_lifetime_total_all_batteries_charged', 'growatt_vaxelriktare_lifetime_total_all_batteries_discharged', 'growatt_vaxelriktare_lifetime_total_solar_energy', 'growatt_vaxelriktare_lifetime_total_load_consumption', 'growatt_vaxelriktare_lifetime_import_from_grid', 'growatt_vaxelriktare_lifetime_total_export_to_grid', 'growatt_vaxelriktare_lifetime_system_production', 'growatt_vaxelriktare_lifetime_self_consumption', 'laddbox_forbrukning', 'growatt_inverter_battery_soc']
2026-03-24 03:38:46 | INFO | core.bess.influxdb_helper:365 - InfluxDB returned 1 lines total
2026-03-24 03:38:46 | INFO | core.bess.influxdb_helper:367 - InfluxDB returned 1 data lines (non-header)
2026-03-24 03:38:46 | INFO | core.bess.influxdb_helper:381 - Sensor counts in response: {}
2026-03-24 03:38:46 | WARNING | core.bess.influxdb_helper:383 - Zero sensors found. First 3 data lines: ['']
2026-03-24 03:38:46 | WARNING | core.bess.influxdb_helper:445 - No header row found in batch InfluxDB response
2026-03-24 03:38:46 | INFO | core.bess.influxdb_helper:392 - Batch fetch complete: got data for 0 periods
2026-03-24 03:38:46 | WARNING | core.bess.sensor_collector:403 - Batch data for 2026-03-24 returned no periods — InfluxDB query matched no sensor data (check sensor names, bucket, and time range). Not caching empty result so next period will retry.
2026-03-24 03:38:46 | ERROR | core.bess.sensor_collector:549 - Failed to load batch data for 2026-03-24
2026-03-24 03:38:46 | WARNING | core.bess.battery_system_manager:575 - Failed to collect/store data for period 2 (00:30): No InfluxDB data available for period 2. Cannot calculate energy flows.
Later in log I get this so something is working but I think there are too many ERRORs to be satisfied:
2026-03-24 03:38:47 | INFO | core.bess.battery_system_manager:597 - No periods stored in historical store
2026-03-24 03:38:47 | INFO | core.bess.battery_system_manager:628 - Fetched solar predictions: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.1, 0.1, 0.1, 0.1, 0.2, 0.2, 0.2, 0.2, 0.3, 0.3, 0.3, 0.3, 0.3, 0.3, 0.3, 0.3, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.1, 0.1, 0.1, 0.1, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
2026-03-24 03:38:47 | INFO | core.bess.battery_system_manager:2370 -
╔═════════════════════════════════════════════════════╗
║ Battery Schedule Prediction Data ║
╠══════════════════════════════════╦══════════════════╣
║ Parameter ║ Value ║
╠══════════════════════════════════╬══════════════════╣
║ Total Capacity ║ 50.0 kWh ║
║ Reserved Capacity ║ 5.0 kWh ║
║ Usable Capacity ║ 45.0 kWh ║
║ Max Charge/Discharge Power ║ 15.0 kW ║
║ Charge Cycle Cost ║ 0.50 SEK ║
╠══════════════════════════════════╬══════════════════╣
║ Initial SOE ║ 5.0 kWh ║
║ Charging Power Rate ║ 40.0 % ║
║ Charging Power ║ 6.0 kW ║
║ Min Hourly Consumption ║ 1.3 kWh ║
║ Max Hourly Consumption ║ 1.3 kWh ║
║ Avg Hourly Consumption ║ 5.3 kWh ║
╚══════════════════════════════════╩══════════════════╝
2026-03-24 03:38:47 | INFO | core.bess.battery_system_manager:2389 - No completed periods for energy balance
2026-03-24 03:38:47 | INFO | core.bess.battery_system_manager:283 - BatterySystemManager started successfully
2026-03-24 03:38:47 | INFO | core.bess.battery_system_manager:308 - Updating battery schedule for period 14 (03:30)
2026-03-24 03:38:47 | INFO | core.bess.battery_system_manager:824 - Period: 14 (03:30), is_first_run: True, prepare_next_day: False
2026-03-24 03:38:47 | INFO | core.bess.battery_system_manager:906 - Skipping data collection: is_first_run=True, period=14, prepare_next_day=False
2026-03-24 03:38:47 | INFO | core.bess.battery_system_manager:2389 - No completed periods for energy balance
2026-03-24 03:38:47 | INFO | core.bess.battery_system_manager:927 - Historical store: no periods stored yet
2026-03-24 03:38:47 | INFO | core.bess.battery_system_manager:1284 - Running optimization for 82 periods from 03:30
2026-03-24 03:38:47 | INFO | core.bess.battery_system_manager:1171 - Terminal value: 45.478/kWh (median_price=48.398, efficiency=0.95, cycle_cost=0.500)
2026-03-24 03:38:47 | INFO | core.bess.dp_battery_algorithm:881 - Optimization using dt=0.25 hours for horizon=82 periods
2026-03-24 03:38:47 | INFO | core.bess.dp_battery_algorithm:905 - Starting direct optimization: horizon=82, initial_soe=5.0, initial_cost_basis=0.500
2026-03-24 03:44:04 | INFO | core.bess.dp_battery_algorithm:978 - Direct Results: Grid-only cost: 4482.41, Optimized cost: 1827.44, Savings: 2654.97 SEK (59.2%)
2026-03-24 03:44:04 | INFO | core.bess.dp_battery_algorithm:545 -
Battery Schedule:
╔════╦═══════════╦══════╦═══════╦╦═════╦══════╦══════╦═════╦═══════╦═══════════════╦═══════╦══════╦══════╗
║ Hr ║ Buy/Sell ║Cons. ║ Cost ║║Sol. ║Sol→B ║Gr→B ║ SoE ║Action ║ Intent ║ Grid ║ Batt ║ Save ║
║ ║ (SEK) ║(kWh) ║ (SEK) ║║(kWh)║(kWh) ║(kWh) ║(kWh)║(kWh) ║ ║ (SEK) ║(SEK) ║(SEK) ║
╠════╬═══════════╬══════╬═══════╬╬═════╬══════╬══════╬═════╬═══════╬═══════════════╬═══════╬══════╬══════╣
║ 14 ║ 55.11/43.18 ║ 1.3 ║ 73.55 ║║ 0.0 ║ 0.0 ║ 3.7 ║ 9 ║ 3.7 ║ GRID_CHARGING ║277.46 ║ 1.79 ║-205.70 ║
║ 15 ║ 57.07/44.75 ║ 1.3 ║ 76.16 ║║ 0.0 ║ 0.0 ║ 3.2 ║ 12 ║ 3.2 ║ GRID_CHARGING ║261.63 ║ 1.58 ║-187.04 ║
║ 16 ║ 54.66/42.82 ║ 1.3 ║ 72.96 ║║ 0.0 ║ 0.0 ║ 3.7 ║ 15 ║ 3.7 ║ GRID_CHARGING ║275.20 ║ 1.79 ║-204.04 ║
║ 17 ║ 55.99/43.89 ║ 1.3 ║ 74.73 ║║ 0.0 ║ 0.0 ║ 3.2 ║ 19 ║ 3.2 ║ GRID_CHARGING ║256.71 ║ 1.58 ║-183.55 ║
║ 18 ║ 59.69/46.85 ║ 1.3 ║ 79.66 ║║ 0.0 ║ 0.0 ║ 3.2 ║ 22 ║ 3.2 ║ GRID_CHARGING ║273.65 ║ 1.58 ║-195.56 ║
║ 19 ║ 60.67/47.63 ║ 1.3 ║ 80.97 ║║ 0.0 ║ 0.0 ║ 3.2 ║ 25 ║ 3.2 ║ GRID_CHARGING ║278.13 ║ 1.58 ║-198.74 ║
║ 20 ║ 43.42/33.84 ║ 1.3 ║ 57.96 ║║ 0.0 ║ 0.0 ║ 3.7 ║ 29 ║ 3.7 ║ GRID_CHARGING ║218.63 ║ 1.79 ║-162.47 ║
║ 21 ║ 48.68/38.04 ║ 1.3 ║ 64.98 ║║ 0.0 ║ 0.0 ║ 3.7 ║ 32 ║ 3.7 ║ GRID_CHARGING ║245.10 ║ 1.79 ║-181.92 ║
║ 22 ║ 61.73/48.48 ║ 1.3 ║ 82.38 ║║ 0.0 ║ 0.0 ║ 1.6 ║ 34 ║ 1.6 ║ GRID_CHARGING ║181.15 ║ 0.78 ║-99.54 ║
║ 23 ║ 62.70/49.26 ║ 1.3 ║ 83.69 ║║ 0.0 ║ 0.0 ║ 0.2 ║ 34 ║ 0.2 ║ GRID_CHARGING ║ 96.23 ║ 0.10 ║-12.64 ║
║ 24 ║ 81.45/64.26 ║ 1.3 ║108.72 ║║ 0.0 ║ 0.0 ║ 0.0 ║ 32 ║ -1.9 ║ EXPORT_ARBITRAG ║-34.43 ║ 0.00 ║143.15 ║
║ 25 ║ 81.67/64.43 ║ 1.3 ║109.00 ║║ 0.0 ║ 0.0 ║ 0.0 ║ 30 ║ -1.9 ║ EXPORT_ARBITRAG ║-34.53 ║ 0.00 ║143.53 ║
║ 26 ║ 79.20/62.46 ║ 1.3 ║105.71 ║║ 0.0 ║ 0.0 ║ 0.0 ║ 29 ║ -1.4 ║ LOAD_SUPPORT ║ -2.24 ║ 0.00 ║107.95 ║
║ 27 ║ 75.84/59.77 ║ 1.3 ║101.23 ║║ 0.0 ║ 0.0 ║ 0.0 ║ 27 ║ -1.4 ║ LOAD_SUPPORT ║ -2.14 ║ 0.00 ║103.37 ║
║ 28 ║ 96.85/76.57 ║ 1.3 ║129.26 ║║ 0.1 ║ 0.0 ║ 0.0 ║ 23 ║ -3.8 ║ EXPORT_ARBITRAG ║-192.67 ║ 0.00 ║321.93 ║
║ 29 ║ 92.83/73.36 ║ 1.3 ║123.89 ║║ 0.1 ║ 0.0 ║ 0.0 ║ 20 ║ -3.8 ║ EXPORT_ARBITRAG ║-184.57 ║ 0.00 ║308.47 ║
║ 30 ║ 85.24/67.29 ║ 1.3 ║113.77 ║║ 0.1 ║ 0.0 ║ 0.0 ║ 16 ║ -3.8 ║ EXPORT_ARBITRAG ║-169.31 ║ 0.00 ║283.08 ║
║ 31 ║ 74.54/58.73 ║ 1.3 ║ 99.49 ║║ 0.1 ║ 0.0 ║ 0.0 ║ 14 ║ -1.3 ║ LOAD_SUPPORT ║ -0.95 ║ 0.00 ║100.43 ║
║ 32 ║ 99.25/78.50 ║ 1.3 ║132.47 ║║ 0.2 ║ 0.0 ║ 0.0 ║ 10 ║ -3.8 ║ EXPORT_ARBITRAG ║-205.68 ║ 0.00 ║338.15 ║
║ 33 ║ 85.58/67.56 ║ 1.3 ║114.23 ║║ 0.2 ║ 0.0 ║ 0.0 ║ 7 ║ -3.8 ║ EXPORT_ARBITRAG ║-177.03 ║ 0.00 ║291.25 ║
║ 34 ║ 74.25/58.50 ║ 1.3 ║ 99.10 ║║ 0.2 ║ 0.0 ║ 0.0 ║ 6 ║ -0.9 ║ LOAD_SUPPORT ║ 17.07 ║ 0.00 ║82.04 ║
║ 35 ║ 57.60/45.17 ║ 1.3 ║ 76.87 ║║ 0.2 ║ 0.0 ║ 3.2 ║ 9 ║ 3.2 ║ GRID_CHARGING ║252.26 ║ 1.58 ║-176.96 ║
║ 36 ║ 83.38/65.80 ║ 1.3 ║111.29 ║║ 0.3 ║ 0.0 ║ 0.0 ║ 6 ║ -2.8 ║ EXPORT_ARBITRAG ║-113.18 ║ 0.00 ║224.47 ║
║ 37 ║ 68.07/53.55 ║ 1.3 ║ 90.85 ║║ 0.3 ║ 0.0 ║ 0.0 ║ 5 ║ -0.9 ║ LOAD_SUPPORT ║ 12.25 ║ 0.00 ║78.60 ║
║ 38 ║ 56.18/44.04 ║ 1.3 ║ 74.99 ║║ 0.3 ║ 0.0 ║ 0.0 ║ 5 ║ -0.0 ║ IDLE ║ 60.68 ║ 0.00 ║14.31 ║
║ 39 ║ 36.52/28.31 ║ 1.3 ║ 48.75 ║║ 0.3 ║ 0.0 ║ 3.7 ║ 9 ║ 3.7 ║ GRID_CHARGING ║174.58 ║ 1.79 ║-127.63 ║
║ 40 ║ 55.92/43.84 ║ 1.3 ║ 74.64 ║║ 0.3 ║ 0.0 ║ 0.0 ║ 5 ║ -3.5 ║ EXPORT_ARBITRAG ║-106.21 ║ 0.00 ║180.85 ║
║ 41 ║ 26.75/20.50 ║ 1.3 ║ 35.71 ║║ 0.3 ║ 0.0 ║ 0.0 ║ 5 ║ -0.0 ║ IDLE ║ 28.82 ║ 0.00 ║ 6.89 ║
║ 42 ║ 12.72/9.27 ║ 1.3 ║ 16.98 ║║ 0.3 ║ 0.0 ║ 0.0 ║ 5 ║ -0.0 ║ IDLE ║ 13.70 ║ 0.00 ║ 3.27 ║
║ 43 ║ 6.58/4.36 ║ 1.3 ║ 8.78 ║║ 0.3 ║ 0.0 ║ 3.7 ║ 9 ║ 3.7 ║ GRID_CHARGING ║ 31.43 ║ 1.79 ║-24.44 ║
║ 44 ║ 12.31/8.94 ║ 1.3 ║ 16.43 ║║ 0.2 ║ 0.0 ║ 0.0 ║ 5 ║ -3.4 ║ EXPORT_ARBITRAG ║-20.25 ║ 0.00 ║36.68 ║
║ 45 ║ 8.02/5.51 ║ 1.3 ║ 10.70 ║║ 0.2 ║ 0.0 ║ 0.0 ║ 5 ║ -0.0 ║ IDLE ║ 8.71 ║ 0.00 ║ 1.99 ║
║ 46 ║ 6.71/4.47 ║ 1.3 ║ 8.96 ║║ 0.2 ║ 0.0 ║ 0.0 ║ 5 ║ -0.0 ║ IDLE ║ 7.29 ║ 0.00 ║ 1.67 ║
║ 47 ║ 5.98/3.88 ║ 1.3 ║ 7.98 ║║ 0.2 ║ 0.0 ║ 3.2 ║ 8 ║ 3.2 ║ GRID_CHARGING ║ 25.93 ║ 1.58 ║-19.53 ║
║ 48 ║ 6.62/4.39 ║ 1.3 ║ 8.83 ║║ 0.2 ║ 0.0 ║ 0.8 ║ 9 ║ 0.8 ║ GRID_CHARGING ║ 12.60 ║ 0.39 ║-4.16 ║
║ 49 ║ 6.01/3.90 ║ 1.3 ║ 8.02 ║║ 0.2 ║ 0.0 ║ 3.2 ║ 12 ║ 3.2 ║ GRID_CHARGING ║ 26.16 ║ 1.58 ║-19.72 ║
║ 50 ║ 6.06/3.95 ║ 1.3 ║ 8.09 ║║ 0.2 ║ 0.0 ║ 3.2 ║ 15 ║ 3.2 ║ GRID_CHARGING ║ 26.40 ║ 1.58 ║-19.88 ║
║ 51 ║ 5.87/3.79 ║ 1.3 ║ 7.84 ║║ 0.2 ║ 0.0 ║ 3.2 ║ 19 ║ 3.2 ║ GRID_CHARGING ║ 25.56 ║ 1.58 ║-19.30 ║
║ 52 ║ 5.86/3.78 ║ 1.3 ║ 7.82 ║║ 0.2 ║ 0.0 ║ 3.2 ║ 22 ║ 3.2 ║ GRID_CHARGING ║ 25.69 ║ 1.58 ║-19.45 ║
║ 53 ║ 5.93/3.84 ║ 1.3 ║ 7.91 ║║ 0.2 ║ 0.0 ║ 3.2 ║ 25 ║ 3.2 ║ GRID_CHARGING ║ 25.99 ║ 1.58 ║-19.66 ║
║ 54 ║ 5.91/3.83 ║ 1.3 ║ 7.89 ║║ 0.2 ║ 0.0 ║ 3.2 ║ 28 ║ 3.2 ║ GRID_CHARGING ║ 25.93 ║ 1.58 ║-19.61 ║
║ 55 ║ 6.14/4.01 ║ 1.3 ║ 8.20 ║║ 0.2 ║ 0.0 ║ 3.2 ║ 31 ║ 3.2 ║ GRID_CHARGING ║ 26.95 ║ 1.58 ║-20.32 ║
║ 56 ║ 4.92/3.03 ║ 1.3 ║ 6.57 ║║ 0.2 ║ 0.0 ║ 3.7 ║ 35 ║ 3.7 ║ GRID_CHARGING ║ 23.98 ║ 1.79 ║-19.20 ║
║ 57 ║ 5.40/3.41 ║ 1.3 ║ 7.20 ║║ 0.2 ║ 0.0 ║ 3.7 ║ 39 ║ 3.7 ║ GRID_CHARGING ║ 26.29 ║ 1.79 ║-20.88 ║
║ 58 ║ 5.52/3.51 ║ 1.3 ║ 7.37 ║║ 0.2 ║ 0.0 ║ 3.7 ║ 42 ║ 3.7 ║ GRID_CHARGING ║ 26.89 ║ 1.79 ║-21.32 ║
║ 59 ║ 6.39/4.21 ║ 1.3 ║ 8.52 ║║ 0.2 ║ 0.0 ║ 1.6 ║ 44 ║ 1.6 ║ GRID_CHARGING ║ 17.71 ║ 0.78 ║-9.96 ║
║ 60 ║ 4.59/2.77 ║ 1.3 ║ 6.13 ║║ 0.1 ║ 0.0 ║ 3.7 ║ 47 ║ 3.7 ║ GRID_CHARGING ║ 22.62 ║ 1.79 ║-18.29 ║
║ 61 ║ 7.80/5.34 ║ 1.3 ║ 10.41 ║║ 0.1 ║ 0.0 ║ 0.0 ║ 47 ║ -0.0 ║ IDLE ║ 9.55 ║ 0.00 ║ 0.87 ║
║ 62 ║ 8.41/5.83 ║ 1.3 ║ 11.23 ║║ 0.1 ║ 0.0 ║ 0.0 ║ 47 ║ -0.0 ║ IDLE ║ 10.29 ║ 0.00 ║ 0.93 ║
║ 63 ║ 10.57/7.55 ║ 1.3 ║ 14.11 ║║ 0.1 ║ 0.0 ║ 0.0 ║ 47 ║ -0.0 ║ IDLE ║ 12.94 ║ 0.00 ║ 1.17 ║
║ 64 ║ 10.57/7.55 ║ 1.3 ║ 14.11 ║║ 0.0 ║ 0.0 ║ 0.0 ║ 47 ║ -0.0 ║ IDLE ║ 13.62 ║ 0.00 ║ 0.49 ║
║ 65 ║ 10.57/7.55 ║ 1.3 ║ 14.11 ║║ 0.0 ║ 0.0 ║ 0.0 ║ 47 ║ -0.0 ║ IDLE ║ 13.62 ║ 0.00 ║ 0.49 ║
║ 66 ║ 10.57/7.55 ║ 1.3 ║ 14.11 ║║ 0.0 ║ 0.0 ║ 0.0 ║ 47 ║ -0.0 ║ IDLE ║ 13.62 ║ 0.00 ║ 0.49 ║
║ 67 ║ 10.57/7.55 ║ 1.3 ║ 14.11 ║║ 0.0 ║ 0.0 ║ 0.0 ║ 47 ║ -0.0 ║ IDLE ║ 13.62 ║ 0.00 ║ 0.49 ║
║ 68 ║ 60.87/47.79 ║ 1.3 ║ 81.24 ║║ 0.0 ║ 0.0 ║ 0.0 ║ 46 ║ -1.4 ║ LOAD_SUPPORT ║ -1.35 ║ 0.00 ║82.59 ║
║ 69 ║ 66.14/52.01 ║ 1.3 ║ 88.28 ║║ 0.0 ║ 0.0 ║ 0.0 ║ 45 ║ -1.4 ║ LOAD_SUPPORT ║ -1.47 ║ 0.00 ║89.74 ║
║ 70 ║ 67.88/53.40 ║ 1.3 ║ 90.60 ║║ 0.0 ║ 0.0 ║ 0.0 ║ 43 ║ -1.8 ║ EXPORT_ARBITRAG ║-22.87 ║ 0.00 ║113.47 ║
║ 71 ║ 70.37/55.39 ║ 1.3 ║ 93.92 ║║ 0.0 ║ 0.0 ║ 0.0 ║ 39 ║ -3.8 ║ EXPORT_ARBITRAG ║-134.50 ║ 0.00 ║228.42 ║
║ 72 ║ 70.90/55.81 ║ 1.3 ║ 94.62 ║║ 0.0 ║ 0.0 ║ 0.0 ║ 35 ║ -3.8 ║ EXPORT_ARBITRAG ║-134.81 ║ 0.00 ║229.43 ║
║ 73 ║ 71.40/56.22 ║ 1.3 ║ 95.30 ║║ 0.0 ║ 0.0 ║ 0.0 ║ 31 ║ -3.8 ║ EXPORT_ARBITRAG ║-135.78 ║ 0.00 ║231.08 ║
║ 74 ║ 72.69/57.25 ║ 1.3 ║ 97.02 ║║ 0.0 ║ 0.0 ║ 0.0 ║ 27 ║ -3.8 ║ EXPORT_ARBITRAG ║-138.27 ║ 0.00 ║235.29 ║
║ 75 ║ 72.64/57.20 ║ 1.3 ║ 96.95 ║║ 0.0 ║ 0.0 ║ 0.0 ║ 23 ║ -3.8 ║ EXPORT_ARBITRAG ║-138.17 ║ 0.00 ║235.11 ║
║ 76 ║ 74.05/58.34 ║ 1.3 ║ 98.83 ║║ 0.0 ║ 0.0 ║ 0.0 ║ 19 ║ -3.8 ║ EXPORT_ARBITRAG ║-140.90 ║ 0.00 ║239.73 ║
║ 77 ║ 72.56/57.14 ║ 1.3 ║ 96.84 ║║ 0.0 ║ 0.0 ║ 0.0 ║ 16 ║ -3.8 ║ EXPORT_ARBITRAG ║-138.01 ║ 0.00 ║234.85 ║
║ 78 ║ 70.99/55.89 ║ 1.3 ║ 94.75 ║║ 0.0 ║ 0.0 ║ 0.0 ║ 12 ║ -3.8 ║ EXPORT_ARBITRAG ║-134.99 ║ 0.00 ║229.74 ║
║ 79 ║ 69.06/54.35 ║ 1.3 ║ 92.18 ║║ 0.0 ║ 0.0 ║ 0.0 ║ 10 ║ -1.9 ║ EXPORT_ARBITRAG ║-28.01 ║ 0.00 ║120.18 ║
║ 80 ║ 68.57/53.96 ║ 1.3 ║ 91.52 ║║ 0.0 ║ 0.0 ║ 0.0 ║ 8 ║ -1.9 ║ EXPORT_ARBITRAG ║-27.80 ║ 0.00 ║119.33 ║
║ 81 ║ 64.39/50.61 ║ 1.3 ║ 85.94 ║║ 0.0 ║ 0.0 ║ 0.0 ║ 6 ║ -1.4 ║ LOAD_SUPPORT ║ -0.78 ║ 0.00 ║86.71 ║
║ 82 ║ 61.48/48.28 ║ 1.3 ║ 82.06 ║║ 0.0 ║ 0.0 ║ 0.0 ║ 5 ║ -1.4 ║ LOAD_SUPPORT ║ -0.74 ║ 0.00 ║82.80 ║
║ 83 ║ 43.83/34.16 ║ 1.3 ║ 58.50 ║║ 0.0 ║ 0.0 ║ 3.2 ║ 8 ║ 3.2 ║ GRID_CHARGING ║200.96 ║ 1.58 ║-144.03 ║
║ 84 ║ 51.55/40.34 ║ 1.3 ║ 68.80 ║║ 0.0 ║ 0.0 ║ 0.0 ║ 7 ║ -1.4 ║ LOAD_SUPPORT ║ -0.62 ║ 0.00 ║69.42 ║
║ 85 ║ 48.11/37.59 ║ 1.3 ║ 64.22 ║║ 0.0 ║ 0.0 ║ 0.0 ║ 6 ║ -0.9 ║ LOAD_SUPPORT ║ 20.91 ║ 0.00 ║43.30 ║
║ 86 ║ 29.72/22.87 ║ 1.3 ║ 39.66 ║║ 0.0 ║ 0.0 ║ 3.7 ║ 10 ║ 3.7 ║ GRID_CHARGING ║149.61 ║ 1.79 ║-111.74 ║
║ 87 ║ 14.73/10.88 ║ 1.3 ║ 19.66 ║║ 0.0 ║ 0.0 ║ 3.7 ║ 13 ║ 3.7 ║ GRID_CHARGING ║ 74.16 ║ 1.79 ║-56.30 ║
║ 88 ║ 7.95/5.46 ║ 1.3 ║ 10.61 ║║ 0.0 ║ 0.0 ║ 3.7 ║ 17 ║ 3.7 ║ GRID_CHARGING ║ 40.03 ║ 1.79 ║-31.21 ║
║ 89 ║ 7.94/5.44 ║ 1.3 ║ 10.59 ║║ 0.0 ║ 0.0 ║ 3.7 ║ 20 ║ 3.7 ║ GRID_CHARGING ║ 39.96 ║ 1.79 ║-31.16 ║
║ 90 ║ 7.92/5.44 ║ 1.3 ║ 10.58 ║║ 0.0 ║ 0.0 ║ 3.7 ║ 24 ║ 3.7 ║ GRID_CHARGING ║ 39.89 ║ 1.79 ║-31.11 ║
║ 91 ║ 7.68/5.24 ║ 1.3 ║ 10.25 ║║ 0.0 ║ 0.0 ║ 3.7 ║ 28 ║ 3.7 ║ GRID_CHARGING ║ 38.66 ║ 1.79 ║-30.21 ║
║ 92 ║ 8.32/5.75 ║ 1.3 ║ 11.10 ║║ 0.0 ║ 0.0 ║ 3.7 ║ 31 ║ 3.7 ║ GRID_CHARGING ║ 41.88 ║ 1.79 ║-32.57 ║
║ 93 ║ 10.08/7.16 ║ 1.3 ║ 13.46 ║║ 0.0 ║ 0.0 ║ 3.7 ║ 35 ║ 3.7 ║ GRID_CHARGING ║ 50.77 ║ 1.79 ║-39.11 ║
║ 94 ║ 10.34/7.37 ║ 1.3 ║ 13.80 ║║ 0.0 ║ 0.0 ║ 3.7 ║ 38 ║ 3.7 ║ GRID_CHARGING ║ 52.06 ║ 1.79 ║-40.06 ║
║ 95 ║ 8.77/6.11 ║ 1.3 ║ 11.70 ║║ 0.0 ║ 0.0 ║ 3.7 ║ 42 ║ 3.7 ║ GRID_CHARGING ║ 44.13 ║ 1.79 ║-34.23 ║
╠════╬═══════════╬══════╬═══════╬╬═════╬══════╬══════╬═════╬═══════╬═══════════════╬═══════╬══════╬══════╣
║Tot ║ ║109.4 ║4482.41 ║║ 7.4 ║ 0.0 ║123.7 ║ ║C:123.7 ║ ║1767.44 ║59.99 ║2654.97 ║
║ ║ ║ ║ ║║ ║ ║ ║ ║D:81.0 ║ ║ ║ ║ ║
╚════╩═══════════╩══════╩═══════╩╩═════╩══════╩══════╩═════╩═══════╩═══════════════╩═══════╩══════╩══════╝
Summary:
Grid-only cost: 4482.41 SEK
Optimized cost: 1827.44 SEK
Total savings: 2654.97 SEK
Savings percentage: 59.2 %
2026-03-24 03:44:04 | INFO | core.bess.battery_system_manager:1374 - === SCHEDULE CREATION DEBUG START ===
2026-03-24 03:44:04 | INFO | core.bess.battery_system_manager:1375 - optimization_period: 14 (03:30), prepare_next_day: False
2026-03-24 03:44:04 | INFO | core.bess.battery_system_manager:1387 - Initial SOE from optimization_data: [5.0, 5.0, 5.0]
2026-03-24 03:44:04 | INFO | core.bess.battery_system_manager:1392 - Got 82 period data objects from optimization
2026-03-24 03:44:04 | INFO | core.bess.battery_system_manager:1411 - CORRECTED SOE progression:
2026-03-24 03:44:04 | INFO | core.bess.battery_system_manager:1420 - Period 13: SOE=5.0kWh (10.0%), Action=0.0kW
2026-03-24 03:44:04 | INFO | core.bess.battery_system_manager:1420 - Period 14: SOE=8.6kWh (17.2%), Action=3.7kW
2026-03-24 03:44:04 | INFO | core.bess.battery_system_manager:1420 - Period 15: SOE=11.8kWh (23.5%), Action=3.2kW
2026-03-24 03:44:04 | INFO | core.bess.battery_system_manager:1420 - Period 16: SOE=15.4kWh (30.8%), Action=3.7kW
2026-03-24 03:44:04 | INFO | core.bess.battery_system_manager:1420 - Period 17: SOE=18.6kWh (37.1%), Action=3.2kW
2026-03-24 03:44:04 | INFO | core.bess.battery_system_manager:1589 - Creating Growatt schedule for period=14
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:706 - Creating Growatt schedule using strategic intents from DP algorithm
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:713 - Using 96 strategic intents from DP algorithm (quarterly resolution)
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:720 - Intent transition at period 14: IDLE → GRID_CHARGING
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:720 - Intent transition at period 24: GRID_CHARGING → EXPORT_ARBITRAGE
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:720 - Intent transition at period 26: EXPORT_ARBITRAGE → LOAD_SUPPORT
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:720 - Intent transition at period 28: LOAD_SUPPORT → EXPORT_ARBITRAGE
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:720 - Intent transition at period 31: EXPORT_ARBITRAGE → LOAD_SUPPORT
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:720 - Intent transition at period 32: LOAD_SUPPORT → EXPORT_ARBITRAGE
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:720 - Intent transition at period 34: EXPORT_ARBITRAGE → LOAD_SUPPORT
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:720 - Intent transition at period 35: LOAD_SUPPORT → GRID_CHARGING
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:720 - Intent transition at period 36: GRID_CHARGING → EXPORT_ARBITRAGE
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:720 - Intent transition at period 37: EXPORT_ARBITRAGE → LOAD_SUPPORT
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:720 - Intent transition at period 38: LOAD_SUPPORT → IDLE
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:720 - Intent transition at period 39: IDLE → GRID_CHARGING
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:720 - Intent transition at period 40: GRID_CHARGING → EXPORT_ARBITRAGE
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:720 - Intent transition at period 41: EXPORT_ARBITRAGE → IDLE
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:720 - Intent transition at period 43: IDLE → GRID_CHARGING
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:720 - Intent transition at period 44: GRID_CHARGING → EXPORT_ARBITRAGE
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:720 - Intent transition at period 45: EXPORT_ARBITRAGE → IDLE
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:720 - Intent transition at period 47: IDLE → GRID_CHARGING
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:720 - Intent transition at period 61: GRID_CHARGING → IDLE
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:720 - Intent transition at period 68: IDLE → LOAD_SUPPORT
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:720 - Intent transition at period 70: LOAD_SUPPORT → EXPORT_ARBITRAGE
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:720 - Intent transition at period 81: EXPORT_ARBITRAGE → LOAD_SUPPORT
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:720 - Intent transition at period 83: LOAD_SUPPORT → GRID_CHARGING
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:720 - Intent transition at period 84: GRID_CHARGING → LOAD_SUPPORT
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:720 - Intent transition at period 86: LOAD_SUPPORT → GRID_CHARGING
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:768 - Converting 96 strategic intents to TOU intervals using 15-minute resolution
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:774 - Intent to mode mapping: {'GRID_CHARGING': 'battery_first', 'SOLAR_STORAGE': 'battery_first', 'LOAD_SUPPORT': 'load_first', 'EXPORT_ARBITRAGE': 'grid_first', 'IDLE': 'load_first'}
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:802 - Grouped 96 periods into 23 mode groups
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:474 - TOU segment: 03:30-05:59 (battery_first) from 10 periods: GRID_CHARGING(10)
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:474 - TOU segment: 06:00-06:29 (grid_first) from 2 periods: EXPORT_ARBITRAGE(2)
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:474 - TOU segment: 07:00-07:44 (grid_first) from 3 periods: EXPORT_ARBITRAGE(3)
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:474 - TOU segment: 08:00-08:29 (grid_first) from 2 periods: EXPORT_ARBITRAGE(2)
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:474 - TOU segment: 08:45-08:59 (battery_first) from 1 periods: GRID_CHARGING(1)
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:474 - TOU segment: 09:00-09:14 (grid_first) from 1 periods: EXPORT_ARBITRAGE(1)
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:474 - TOU segment: 09:45-09:59 (battery_first) from 1 periods: GRID_CHARGING(1)
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:474 - TOU segment: 10:00-10:14 (grid_first) from 1 periods: EXPORT_ARBITRAGE(1)
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:474 - TOU segment: 10:45-10:59 (battery_first) from 1 periods: GRID_CHARGING(1)
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:474 - TOU segment: 11:00-11:14 (grid_first) from 1 periods: EXPORT_ARBITRAGE(1)
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:474 - TOU segment: 11:45-15:14 (battery_first) from 14 periods: GRID_CHARGING(14)
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:474 - TOU segment: 17:30-20:14 (grid_first) from 11 periods: EXPORT_ARBITRAGE(11)
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:474 - TOU segment: 20:45-20:59 (battery_first) from 1 periods: GRID_CHARGING(1)
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:474 - TOU segment: 21:30-23:59 (battery_first) from 10 periods: GRID_CHARGING(10)
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:573 - TOU CASCADING: 14 total non-expired intervals, programming 9 to hardware, 5 pending write
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:581 - PENDING: 11:00-11:14 (grid_first) - will be programmed when a slot frees up
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:581 - PENDING: 11:45-15:14 (battery_first) - will be programmed when a slot frees up
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:581 - PENDING: 17:30-20:14 (grid_first) - will be programmed when a slot frees up
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:581 - PENDING: 20:45-20:59 (battery_first) - will be programmed when a slot frees up
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:581 - PENDING: 21:30-23:59 (battery_first) - will be programmed when a slot frees up
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:842 - TOU conversion complete: 14 total intervals, 9 selected for hardware
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:734 - New Growatt schedule created with 14 TOU intervals (9 active for hardware)
2026-03-24 03:44:04 | INFO | core.bess.battery_system_manager:1616 - Evaluating whether to apply new schedule at period 14
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:1010 - Comparing TOU intervals from period 14 (03:30) onwards
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:1031 - Current schedule has 0 TOU intervals
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:1032 - New schedule has 9 TOU intervals
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:1053 - Relevant intervals: Current=0, New=9
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:1058 - Current relevant TOU intervals:
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:1064 - New relevant TOU intervals:
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:1066 - 03:30-05:59 mode=battery_first
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:1066 - 06:00-06:29 mode=grid_first
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:1066 - 07:00-07:44 mode=grid_first
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:1066 - 08:00-08:29 mode=grid_first
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:1066 - 08:45-08:59 mode=battery_first
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:1066 - 09:00-09:14 mode=grid_first
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:1066 - 09:45-09:59 mode=battery_first
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:1066 - 10:00-10:14 mode=grid_first
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:1066 - 10:45-10:59 mode=battery_first
2026-03-24 03:44:04 | INFO | core.bess.growatt_schedule:1072 - DECISION: Schedules differ - Different number of relevant intervals (0 vs 9)
2026-03-24 03:44:04 | INFO | core.bess.battery_system_manager:1639 - DECISION: Apply schedule - Different number of relevant intervals (0 vs 9)
2026-03-24 03:44:04 | INFO | core.bess.battery_system_manager:1659 - ================================================================================
2026-03-24 03:44:04 | INFO | core.bess.battery_system_manager:1660 - === SCHEDULE APPLICATION START ===
2026-03-24 03:44:04 | INFO | core.bess.battery_system_manager:1661 - Period: 14 (03:30), Reason: Different number of relevant intervals (0 vs 9), Next day: False
2026-03-24 03:44:04 | INFO | core.bess.battery_system_manager:1668 - ================================================================================
2026-03-24 03:44:04 | INFO | core.bess.battery_system_manager:1670 - Schedule update required: Different number of relevant intervals (0 vs 9)
2026-03-24 03:44:04 | INFO | core.bess.battery_system_manager:1678 - TOU comparison: Current=0 intervals, New=9 intervals
2026-03-24 03:44:04 | INFO | core.bess.battery_system_manager:1685 - Validating TOU intervals before sending to inverter...
2026-03-24 03:44:04 | INFO | core.bess.battery_system_manager:1708 - Analyzing TOU changes from period 14 (03:30) onwards...
2026-03-24 03:44:04 | INFO | core.bess.battery_system_manager:1818 - Updating 9 segments, disabling 0 segments
2026-03-24 03:44:04 | INFO | core.bess.battery_system_manager:1856 - HARDWARE: Setting TOU segment 1: 03:30-05:59 battery_first
I expect less ERRORs like this.
I just configures BESS on my home installation. I get many ERRORs in the log for update_time_segment, set_value and a few others.
My config looks like this:
The log looks like this:
Later in log I get this so something is working but I think there are too many ERRORs to be satisfied:
I expect less ERRORs like this.