Skip to content

ERRORs in log indicates problem with connection to Home Assistant #63

@nilaz

Description

@nilaz

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

The log looks like this:

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions