2025-03-09T09:54:48.717 Scroll down for event log! {"uptime": 630353, "free_heap_bytes":127632, "largest_free_heap_block":110580, "devices": [ {"UID":"26Jb", "DID":2169, "port":"E"}], "error_counters": [ {"port": "A", "SpiTfpChecksum": 0, "SpiTfpFrame": 0, "TfpFrame": 0, "TfpUnexpected": 0},{"port": "B", "SpiTfpChecksum": 0, "SpiTfpFrame": 0, "TfpFrame": 0, "TfpUnexpected": 0},{"port": "C", "SpiTfpChecksum": 0, "SpiTfpFrame": 0, "TfpFrame": 0, "TfpUnexpected": 0},{"port": "D", "SpiTfpChecksum": 0, "SpiTfpFrame": 0, "TfpFrame": 0, "TfpUnexpected": 0},{"port": "E", "SpiTfpChecksum": 0, "SpiTfpFrame": 0, "TfpFrame": 0, "TfpUnexpected": 0},{"port": "F", "SpiTfpChecksum": 0, "SpiTfpFrame": 0, "TfpFrame": 0, "TfpUnexpected": 0}], "info/modules": {"task_scheduler":true,"event_log":true,"api":true,"web_server":true,"rtc":true,"esp32_ethernet_brick":true,"watchdog":true,"uptime_tracker":true,"network":true,"ntp":true,"ethernet":true,"wifi":true,"wireguard":true,"mqtt":true,"http":true,"ws":true,"event":true,"system":true,"firmware_update":true,"automation":true,"charge_manager":true,"cm_networking":true,"rtc_bricklet":false,"modbus_tcp_client":true,"meters":true,"meters_em":true,"meters_api":true,"meters_modbus_tcp":true,"meters_sun_spec":true,"meters_sma_speedwire":true,"meters_rct_power":true,"meters_legacy_api":true,"debug_protocol":true,"em_v1":true,"em_common":true,"em_energy_analysis":true,"power_manager":true,"em_phase_switcher":true,"em_rtc":true,"em_sdcard":true,"day_ahead_prices":true,"solar_forecast":true,"authentication":true,"device_name":true,"coredump":true,"pwa":true,"certs":true,"remote_access":true,"eco":true}, "event_log/boot_id": {"boot_id":4056636753}, "info/features": ["ethernet","firmware_update","energy_manager","rtc","phase_switch","meters","meter","meter_all_values"], "info/version": {"firmware":"2.3.5+67c9a9a9","config":"2.2.3","config_type":"wem"}, "rtc/time": {"year":2025,"month":3,"day":9,"hour":8,"minute":54,"second":47,"weekday":0}, "rtc/config_modified": {"modified":2}, "rtc/config": {"auto_sync":true}, "info/last_boots": [{"reset_reason":3,"boot_count":12,"timestamp_min":29023711,"uptime":52470191,"uptime_overflows":0},{"reset_reason":3,"boot_count":13,"timestamp_min":29023849,"uptime":8266026,"uptime_overflows":0},{"reset_reason":3,"boot_count":15,"timestamp_min":29023886,"uptime":65929,"uptime_overflows":0},{"reset_reason":3,"boot_count":18,"timestamp_min":29023902,"uptime":155784,"uptime_overflows":0},{"reset_reason":3,"boot_count":19,"timestamp_min":29023913,"uptime":665808,"uptime_overflows":0},{"reset_reason":3,"boot_count":20,"timestamp_min":29024383,"uptime":28227455,"uptime_overflows":0},{"reset_reason":3,"boot_count":21,"timestamp_min":29024426,"uptime":2546531,"uptime_overflows":0},{"reset_reason":3,"boot_count":22,"timestamp_min":29024433,"uptime":425732,"uptime_overflows":0},{"reset_reason":3,"boot_count":23,"timestamp_min":29025145,"uptime":42708910,"uptime_overflows":0},{"reset_reason":3,"boot_count":24,"timestamp_min":29025164,"uptime":1126404,"uptime_overflows":0}], "network/config_modified": {"modified":2}, "network/config": {"hostname":null,"enable_mdns":true,"web_server_port":80}, "network/state": {"connected":true}, "ntp/config_modified": {"modified":2}, "ntp/config": {"enable":true,"use_dhcp":true,"timezone":"Europe/Berlin","server":"192.168.222.1","server2":"ptbtime2.ptb.de"}, "ntp/state": {"synced":true,"time":29025174}, "ethernet/config_modified": {"modified":0}, "ethernet/config": {"enable_ethernet":true,"ip":"0.0.0.0","gateway":"0.0.0.0","subnet":"0.0.0.0","dns":"0.0.0.0","dns2":"0.0.0.0"}, "ethernet/state": {"connection_state":3,"connection_start":3492,"connection_end":0,"ip":"192.168.1.11","subnet":"255.255.255.0","full_duplex":true,"link_speed":100}, "wifi/state": {"connection_state":0,"connection_start":0,"connection_end":0,"ap_state":2,"ap_bssid":"78:21:84:45:01:BD","ap_sta_count":0,"sta_ip":"0.0.0.0","sta_subnet":"0.0.0.0","sta_rssi":-127,"sta_bssid":""}, "wifi/sta_config_modified": {"modified":0}, "wifi/sta_config": {"enable_sta":false,"ssid":"","bssid":[0,0,0,0,0,0],"bssid_lock":false,"enable_11b":false,"passphrase":"","ip":"0.0.0.0","gateway":"0.0.0.0","subnet":"0.0.0.0","dns":"0.0.0.0","dns2":"0.0.0.0","wpa_eap_config":[0,null]}, "wifi/ap_config_modified": {"modified":2}, "wifi/ap_config": {"enable_ap":true,"ap_fallback_only":true,"ssid":"wem-26K8","hide_ssid":false,"passphrase":null,"channel":0,"ip":"10.0.0.1","gateway":"10.0.0.1","subnet":"255.255.255.0"}, "wireguard/config_modified": {"modified":0}, "wireguard/config": {"enable":false,"make_default_interface":true,"internal_ip":"0.0.0.0","internal_subnet":"0.0.0.0","internal_gateway":"0.0.0.0","remote_host":"","remote_port":51820,"local_port":51820,"private_key":"","remote_public_key":"","preshared_key":"","allowed_ip":"0.0.0.0","allowed_subnet":"0.0.0.0"}, "wireguard/state": {"connection_start":0,"connection_end":0,"state":0}, "mqtt/config_modified": {"modified":2}, "mqtt/config": {"enable_mqtt":false,"broker_host":"","broker_port":1883,"broker_username":"","broker_password":"","global_topic_prefix":"warpEM","client_name":"warpEM","interval":1,"protocol":0,"cert_id":-1,"client_cert_id":-1,"client_key_id":-1,"path":"","read_only":false}, "mqtt/state": {"connection_state":0,"connection_start":0,"connection_end":0,"last_error":0}, "info/ws": {"keep_alive_fds":[54,55,-1,-1,-1],"keep_alive_pongs":[629274,629225,0,0,0],"worker_active":2,"last_worker_run":629661,"queue_len":0}, "system/i18n_config_modified": {"modified":0}, "system/i18n_config": {"language":0,"detect_browser_language":true}, "firmware_update/config_modified": {"modified":0}, "firmware_update/config": {"update_url":"https://www.warp-charger.com/firmwares/","cert_id":-1}, "firmware_update/state": {"publisher":"Tinkerforge GmbH","check_timestamp":0,"check_state":0,"update_version":"","install_progress":0,"install_state":0}, "automation/config_modified": {"modified":0}, "automation/config": {"tasks":[]}, "automation/state": {"registered_triggers":[1,3,11,12,13,14,15,16,17,18,20],"registered_actions":[1,2,5,6,11,12,13,14,15],"enabled_triggers":[1,12,13,14,15,18,20,11],"enabled_actions":[1,5,13,15,12,6,11]}, "charge_manager/config_modified": {"modified":2}, "charge_manager/config": {"enable_charge_manager":true,"enable_watchdog":false,"default_available_current":16000,"maximum_available_current":16000,"minimum_current_auto":false,"minimum_current":6000,"minimum_current_1p":6000,"minimum_current_vehicle_type":0,"verbose":false,"requested_current_threshold":60,"requested_current_margin":3000,"chargers":[{"host":"warp2.local","name":"warp2","rot":1}]}, "charge_manager/low_level_config_modified": {"modified":0}, "charge_manager/low_level_config": {"global_hysteresis":180,"wakeup_time":180,"plug_in_time":180,"enable_current_factor_pct":150,"allocation_interval":5,"rotation_interval":900}, "charge_manager/state": {"state":1,"l_raw":[0,16000,16000,16000],"l_min":[0,16000,16000,16000],"l_spread":[0,16000,16000,16000],"l_max_pv":0,"alloc":[18000,6000,6000,6000],"chargers":[{"s":4,"e":0,"ac":6000,"ap":3,"sc":6000,"sp":7,"lu":630311,"n":"warp2","u":189845}]}, "charge_manager/low_level_state": {"last_hyst_reset":369930,"wnd_min":[0,0,0,0],"wnd_max":[0,0,0,0],"chargers":[{"b":29,"rc":6000,"ae":415,"ls":79739,"lp":0,"lw":0,"ip":0}]}, "charge_manager/available_current": {"current":16000}, "power_manager/charge_mode": {"mode":0}, "rtc/identity": {"uid":"","connected_uid":"","position":"","hw_version":"","fw_version":"","device_identifier":123}, "meters/0/config_modified": {"modified":2}, "meters/0/config": [5,{"display_name":"Fronius Symo Carport","location":3,"host":"192.168.1.12","port":502,"device_address":1,"manufacturer_name":"Fronius","model_name":"Symo 5.0-3-M","serial_number":"35132678","model_id":113,"model_instance":0,"dc_port_type":65535}], "meters/0/state": null, "meters/0/errors": {"timeout":3,"inconsistency":0}, "meters/0/value_ids": [32,12,16,20,4,5,6,1,2,3,74,364,155,115,356,211,35,10,160,383,384,385,381], "meters/0/values": [7.539999962,2.50999999,2.519999981,2.50999999,396.3999939,398.6000061,398,229,231,228.9000092,-1734,49.98999786,1734.010376,6,-0.99999404,128.8240204,null,null,1807.368896,null,null,null,null], "meters/1/config_modified": {"modified":2}, "meters/1/config": [0,null], "meters/1/state": null, "meters/1/errors": null, "meters/1/value_ids": [], "meters/1/values": [], "meters/2/config_modified": {"modified":2}, "meters/2/config": [0,null], "meters/2/state": null, "meters/2/errors": null, "meters/2/value_ids": [], "meters/2/values": [], "meters/3/config_modified": {"modified":2}, "meters/3/config": [0,null], "meters/3/state": null, "meters/3/errors": null, "meters/3/value_ids": [], "meters/3/values": [], "meters/4/config_modified": {"modified":2}, "meters/4/config": [0,null], "meters/4/state": null, "meters/4/errors": null, "meters/4/value_ids": [], "meters/4/values": [], "meters/5/config_modified": {"modified":2}, "meters/5/config": [0,null], "meters/5/state": null, "meters/5/errors": null, "meters/5/value_ids": [], "meters/5/values": [], "meters/6/config_modified": {"modified":2}, "meters/6/config": [0,null], "meters/6/state": null, "meters/6/errors": null, "meters/6/value_ids": [], "meters/6/values": [], "meter/error_counters": {"timeout":3,"inconsistency":0}, "meters_legacy_api/state": {"writable":false}, "meters_legacy_api/config_modified": {"modified":0}, "meters_legacy_api/config": {"linked_meter_slot":0}, "meter/state": {"state":2,"type":201}, "meter/values": {"power":-1734,"energy_rel":null,"energy_abs":null}, "meter/phases": {"phases_connected":[false,false,false],"phases_active":[false,false,false]}, "meter/all_values": [229,231,228.9000092,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,-1734,null,6,-0.99999404,null,49.98999786,null,128.8240204,null,null,null,null,null,null,null,null,null,null,396.3999939,398.6000061,398,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null], "meter/last_reset": {"last_reset":0}, "energy_manager/identity": {"uid":"26Jb","connected_uid":"0","position":"E","hw_version":"1.0.0","fw_version":"2.0.7","device_identifier":2169}, "energy_manager/state": {"error_flags":0,"config_error_flags":0,"em_version":1,"phases_switched":3,"input3_state":false,"input4_state":true,"relay_state":false}, "energy_manager/low_level_state": {"consecutive_bricklet_errors":0,"input_voltage":11988,"uptime":304869290,"contactor":true,"contactor_check_state":1,"led_rgb":[0,0,0]}, "energy_manager/config_modified": {"modified":2}, "energy_manager/config": {"contactor_installed":true}, "power_manager/state": {"config_error_flags":0,"external_control":0}, "power_manager/config_modified": {"modified":2}, "power_manager/config": {"enabled":false,"phase_switching_mode":0,"excess_charging_enable":false,"default_mode":0,"meter_slot_grid_power":1,"meter_slot_battery_power":255,"battery_mode":0,"battery_inverted":false,"battery_deadzone":100,"target_power_from_grid":0,"guaranteed_power":1380,"cloud_filter_mode":2}, "power_manager/dynamic_load_config_modified": {"modified":2}, "power_manager/dynamic_load_config": {"enabled":false,"meter_slot_grid_currents":0,"current_limit":0,"largest_consumer_current":32000,"safety_margin_pct":0}, "power_manager/low_level_state": {"power_at_meter":0,"power_at_battery":0,"power_available":0,"i_meter":[0,0,0],"i_pp_max":[0,0,0],"i_pp_mavg":[0,0,0],"i_pp":[0,0,0],"max_current_limited":0,"is_3phase":true,"charging_blocked":0}, "power_manager/external_control": {"phases_wanted":0}, "em_phase_switcher/charger_config_modified": {"modified":2}, "em_phase_switcher/charger_config": {"idx":0,"host":"warp2.local","proxy_mode":false}, "energy_manager/sdcard_state": {"sd_status":0,"lfs_status":0,"card_type":12,"sector_count":15759360,"sector_size":512,"manufacturer_id":116,"product_rev":32,"product_name":"USDU1"}, "day_ahead_prices/config_modified": {"modified":2}, "day_ahead_prices/config": {"enable":true,"api_url":"https://api.warp-charger.com/","region":0,"resolution":1,"cert_id":-1,"vat":0,"grid_costs_and_taxes":0,"supplier_markup":0,"supplier_base_fee":0}, "day_ahead_prices/state": {"last_sync":29025164,"last_check":29025164,"next_check":29025390,"current_price":2927}, "day_ahead_prices/prices": {"first_date":29023140,"resolution":1,"prices":[12497,11394,11722,11676,11842,12130,12782,12059,9804,7254,1805,206,-34,-10,7,5620,10086,14558,17405,14003,11121,10000,9924,9794,9519,9481,9444,9651,9867,10151,10000,9301,6540,2927,1010,3,-225,-204,9,1739,9056,12574,13537,13669,13019,12270,11280,10683]}, "solar_forecast/config_modified": {"modified":2}, "solar_forecast/config": {"enable":true,"api_url":"https://api.forecast.solar/","cert_id":-1}, "solar_forecast/state": {"rate_limit":12,"rate_remaining":8,"next_api_call":29025284}, "solar_forecast/planes/0/config_modified": {"modified":2}, "solar_forecast/planes/0/config": {"enable":true,"name":"Carport-Ost","lat":null,"long":null,"dec":10,"az":-30,"wp":2610}, "solar_forecast/planes/0/state": {"last_sync":29025164,"last_check":29025164,"next_check":29025284,"place":null}, "solar_forecast/planes/0/forecast": {"first_date":29024520,"resolution":1,"forecast":[0,0,0,0,0,0,0,10,182,389,640,878,1021,1018,915,745,520,290,137,0,0,0,0,0,0,0,0,0,0,0,0,9,127,240,409,690,908,889,726,525,341,191,96,0,0,0,0,0]}, "solar_forecast/planes/1/config_modified": {"modified":2}, "solar_forecast/planes/1/config": {"enable":true,"name":"Carport-West","lat":null,"long":null,"dec":10,"az":60,"wp":2610}, "solar_forecast/planes/1/state": {"last_sync":29025164,"last_check":29025164,"next_check":29025284,"place":null}, "solar_forecast/planes/1/forecast": {"first_date":29024520,"resolution":1,"forecast":[0,0,0,0,0,0,0,7,125,286,502,736,909,972,944,831,644,413,226,0,0,0,0,0,0,0,0,0,0,0,0,7,105,205,356,604,818,848,739,566,392,236,125,0,0,0,0,0]}, "solar_forecast/planes/2/config_modified": {"modified":2}, "solar_forecast/planes/2/config": {"enable":false,"name":"#2","lat":null,"long":null,"dec":0,"az":0,"wp":0}, "solar_forecast/planes/2/state": {"last_sync":0,"last_check":0,"next_check":0,"place":null}, "solar_forecast/planes/2/forecast": {"first_date":0,"resolution":1,"forecast":[]}, "solar_forecast/planes/3/config_modified": {"modified":2}, "solar_forecast/planes/3/config": {"enable":false,"name":"#3","lat":null,"long":null,"dec":0,"az":0,"wp":0}, "solar_forecast/planes/3/state": {"last_sync":0,"last_check":0,"next_check":0,"place":null}, "solar_forecast/planes/3/forecast": {"first_date":0,"resolution":1,"forecast":[]}, "solar_forecast/planes/4/config_modified": {"modified":2}, "solar_forecast/planes/4/config": {"enable":false,"name":"#4","lat":null,"long":null,"dec":0,"az":0,"wp":0}, "solar_forecast/planes/4/state": {"last_sync":0,"last_check":0,"next_check":0,"place":null}, "solar_forecast/planes/4/forecast": {"first_date":0,"resolution":1,"forecast":[]}, "solar_forecast/planes/5/config_modified": {"modified":2}, "solar_forecast/planes/5/config": {"enable":false,"name":"#5","lat":null,"long":null,"dec":0,"az":0,"wp":0}, "solar_forecast/planes/5/state": {"last_sync":0,"last_check":0,"next_check":0,"place":null}, "solar_forecast/planes/5/forecast": {"first_date":0,"resolution":1,"forecast":[]}, "authentication/config_modified": {"modified":2}, "authentication/config": {"enable_auth":true,"username":"admin","digest_hash":null}, "info/name": {"name":"wem-26K8","type":"wem","display_type":"WARP Energy Manager","uid":"26K8"}, "info/display_name_modified": {"modified":2}, "info/display_name": {"display_name":"warpEM"}, "coredump/state": {"coredump_available":false}, "certs/state": {"certs":[]}, "remote_access/config": {"uuid":"44af9998-dc89-457b-a4fa-19f97e54b822","enable":true,"password":null,"relay_host":"my.warp-charger.com","relay_port":443,"cert_id":-1,"users":[{"id":1,"email":null,"uuid":"f06e3c35-4b96-4bd7-9d41-57e69a137f65","public_key":"ucV1/b30aeDXXP5RM5w4CYKeKN50aF9sZdBsqF4Ujjk="}]}, "remote_access/state": [{"state":2,"user":255,"connection":255},{"state":1,"user":255,"connection":255},{"state":1,"user":255,"connection":255},{"state":1,"user":255,"connection":255},{"state":1,"user":255,"connection":255},{"state":1,"user":255,"connection":255}], "remote_access/registration_state": {"state":0,"message":""}, "eco/config_modified": {"modified":2}, "eco/config": {"enable":false,"park_time":false,"park_time_duration":8,"charge_below":false,"charge_below_threshold":0,"block_above":false,"block_above_threshold":20,"yield_forecast":false,"yield_forecast_threshold":0}, "eco/state": {"last_save":0,"chargers":[{"start":0,"amount":0,"chart":"wP8/AAAAAAAAAAAA"}]}, "eco/charge_plan": {"enable":false,"departure":1,"time":480,"amount":4}, "reboot": null, "rtc/config_update": {"auto_sync":true}, "rtc/config_reset": null, "rtc/time_update": {"year":0,"month":0,"day":0,"hour":0,"minute":0,"second":0,"weekday":0}, "network/config_update": {"hostname":null,"enable_mdns":true,"web_server_port":80}, "network/config_reset": null, "ntp/config_update": {"enable":true,"use_dhcp":true,"timezone":"Europe/Berlin","server":"192.168.222.1","server2":"ptbtime2.ptb.de"}, "ntp/config_reset": null, "ethernet/config_update": {"enable_ethernet":true,"ip":"0.0.0.0","gateway":"0.0.0.0","subnet":"0.0.0.0","dns":"0.0.0.0","dns2":"0.0.0.0"}, "ethernet/config_reset": null, "ethernet/force_reset": null, "wifi/scan": null, "wifi/sta_config_update": {"enable_sta":false,"ssid":"","bssid":[0,0,0,0,0,0],"bssid_lock":false,"enable_11b":false,"passphrase":"","ip":"0.0.0.0","gateway":"0.0.0.0","subnet":"0.0.0.0","dns":"0.0.0.0","dns2":"0.0.0.0","wpa_eap_config":[0,null]}, "wifi/sta_config_reset": null, "wifi/ap_config_update": {"enable_ap":true,"ap_fallback_only":true,"ssid":"wem-26K8","hide_ssid":false,"passphrase":null,"channel":0,"ip":"10.0.0.1","gateway":"10.0.0.1","subnet":"255.255.255.0"}, "wifi/ap_config_reset": null, "wireguard/config_update": {"enable":false,"make_default_interface":true,"internal_ip":"0.0.0.0","internal_subnet":"0.0.0.0","internal_gateway":"0.0.0.0","remote_host":"","remote_port":51820,"local_port":51820,"private_key":"","remote_public_key":"","preshared_key":"","allowed_ip":"0.0.0.0","allowed_subnet":"0.0.0.0"}, "wireguard/config_reset": null, "mqtt/config_update": {"enable_mqtt":false,"broker_host":"","broker_port":1883,"broker_username":"","broker_password":"","global_topic_prefix":"warpEM","client_name":"warpEM","interval":1,"protocol":0,"cert_id":-1,"client_cert_id":-1,"client_key_id":-1,"path":"","read_only":false}, "mqtt/config_reset": null, "system/i18n_config_update": {"language":0,"detect_browser_language":true}, "system/i18n_config_reset": null, "factory_reset": {"do_i_know_what_i_am_doing":null}, "config_reset": {"do_i_know_what_i_am_doing":null}, "firmware_update/config_update": {"update_url":"https://www.warp-charger.com/firmwares/","cert_id":-1}, "firmware_update/config_reset": null, "firmware_update/check_for_update": null, "firmware_update/install_firmware": {"version":""}, "firmware_update/override_signature": {"cookie":0}, "automation/config_update": {"tasks":[]}, "automation/config_reset": null, "charge_manager/config_update": {"enable_charge_manager":true,"enable_watchdog":false,"default_available_current":16000,"maximum_available_current":16000,"minimum_current_auto":false,"minimum_current":6000,"minimum_current_1p":6000,"minimum_current_vehicle_type":0,"verbose":false,"requested_current_threshold":60,"requested_current_margin":3000,"chargers":[{"host":"warp2.local","name":"warp2","rot":1}]}, "charge_manager/config_reset": null, "charge_manager/low_level_config_update": {"global_hysteresis":180,"wakeup_time":180,"plug_in_time":180,"enable_current_factor_pct":150,"allocation_interval":5,"rotation_interval":900}, "charge_manager/low_level_config_reset": null, "charge_manager/available_current_update": {"current":0}, "power_manager/charge_mode_update": {"mode":0}, "charge_manager/scan": null, "rtc/reflash": null, "rtc/reset": null, "meters/0/config_update": [5,{"display_name":"Fronius Symo Carport","location":3,"host":"192.168.1.12","port":502,"device_address":1,"manufacturer_name":"Fronius","model_name":"Symo 5.0-3-M","serial_number":"35132678","model_id":113,"model_instance":0,"dc_port_type":65535}], "meters/0/config_reset": null, "meters/1/config_update": [0,null], "meters/1/config_reset": null, "meters/2/config_update": [0,null], "meters/2/config_reset": null, "meters/3/config_update": [0,null], "meters/3/config_reset": null, "meters/4/config_update": [0,null], "meters/4/config_reset": null, "meters/5/config_update": [0,null], "meters/5/config_reset": null, "meters/6/config_update": [0,null], "meters/6/config_reset": null, "meters_sun_spec/scan": {"host":"","port":0,"device_address_first":1,"device_address_last":247,"cookie":0}, "meters_sun_spec/scan_continue": {"cookie":0}, "meters_sun_spec/scan_abort": {"cookie":0}, "meters_legacy_api/config_update": {"linked_meter_slot":0}, "meters_legacy_api/config_reset": null, "meter/reset": null, "meter/state_update": {"state":0,"type":0}, "meter/values_update": {"power":0,"energy_rel":0,"energy_abs":0}, "meter/phases_update": {"phases_connected":[false,false,false],"phases_active":[false,false,false]}, "meter/all_values_update": [], "energy_manager/reflash": null, "energy_manager/reset": null, "energy_manager/config_update": {"contactor_installed":true}, "energy_manager/config_reset": null, "power_manager/config_update": {"enabled":false,"phase_switching_mode":0,"excess_charging_enable":false,"default_mode":0,"meter_slot_grid_power":1,"meter_slot_battery_power":255,"battery_mode":0,"battery_inverted":false,"battery_deadzone":100,"target_power_from_grid":0,"guaranteed_power":1380,"cloud_filter_mode":2}, "power_manager/config_reset": null, "power_manager/dynamic_load_config_update": {"enabled":false,"meter_slot_grid_currents":0,"current_limit":0,"largest_consumer_current":32000,"safety_margin_pct":0}, "power_manager/dynamic_load_config_reset": null, "power_manager/external_control_update": {"phases_wanted":0}, "em_phase_switcher/charger_config_update": {"idx":0,"host":"warp2.local","proxy_mode":false}, "em_phase_switcher/charger_config_reset": null, "energy_manager/sdcard_format": {"do_i_know_what_i_am_doing":null}, "day_ahead_prices/config_update": {"enable":true,"api_url":"https://api.warp-charger.com/","region":0,"resolution":1,"cert_id":-1,"vat":0,"grid_costs_and_taxes":0,"supplier_markup":0,"supplier_base_fee":0}, "day_ahead_prices/config_reset": null, "solar_forecast/config_update": {"enable":true,"api_url":"https://api.forecast.solar/","cert_id":-1}, "solar_forecast/config_reset": null, "solar_forecast/planes/0/config_update": {"enable":true,"name":"Carport-Ost","lat":null,"long":null,"dec":10,"az":-30,"wp":2610}, "solar_forecast/planes/0/config_reset": null, "solar_forecast/planes/1/config_update": {"enable":true,"name":"Carport-West","lat":null,"long":null,"dec":10,"az":60,"wp":2610}, "solar_forecast/planes/1/config_reset": null, "solar_forecast/planes/2/config_update": {"enable":false,"name":"#2","lat":null,"long":null,"dec":0,"az":0,"wp":0}, "solar_forecast/planes/2/config_reset": null, "solar_forecast/planes/3/config_update": {"enable":false,"name":"#3","lat":null,"long":null,"dec":0,"az":0,"wp":0}, "solar_forecast/planes/3/config_reset": null, "solar_forecast/planes/4/config_update": {"enable":false,"name":"#4","lat":null,"long":null,"dec":0,"az":0,"wp":0}, "solar_forecast/planes/4/config_reset": null, "solar_forecast/planes/5/config_update": {"enable":false,"name":"#5","lat":null,"long":null,"dec":0,"az":0,"wp":0}, "solar_forecast/planes/5/config_reset": null, "authentication/config_update": {"enable_auth":true,"username":"admin","digest_hash":null}, "authentication/config_reset": null, "info/display_name_update": {"display_name":"warpEM"}, "info/display_name_reset": null, "certs/add": {"id":0,"name":"","cert":""}, "certs/modify": {"id":0,"name":"","cert":""}, "certs/remove": {"id":0}, "remote_access/config_update": {"enable":false,"relay_host":"","relay_port":443,"email":"","cert_id":-1}, "remote_access/config_reset": null, "eco/config_update": {"enable":false,"park_time":false,"park_time_duration":8,"charge_below":false,"charge_below_threshold":0,"block_above":false,"block_above_threshold":20,"yield_forecast":false,"yield_forecast_threshold":0}, "eco/config_reset": null, "eco/charge_plan_update": {"enable":false,"departure":1,"time":480,"amount":4}, "energy_manager/history_wallbox_5min": {"uid":189845,"year":2025,"month":3,"day":8}, "energy_manager/history_wallbox_daily": {"uid":189845,"year":2025,"month":3}, "energy_manager/history_energy_manager_5min": {"year":2025,"month":3,"day":8}, "energy_manager/history_energy_manager_daily": {"year":2025,"month":3}} 0,468 | | **** TINKERFORGE WARP ENERGY MANAGER V2.3.5+67C9A9A9 **** 0,469 | | 321K RAM SYSTEM 286604 HEAP BYTES FREE 0,479 | | READY. 0,480 | | Last reset reason was: Software reset via esp_restart. 0,507 | main | Firmware partitions: app0 (valid), app1 (valid, running, boot) 0,719 | fs | Mounted data partition. 61440 of 3538944 bytes (1.7 %) used 1,076 | api | WARP Energy Manager config version: 2.2.3 (wem) 1,141 | esp32_eth_brick | ESP32 Ethernet Brick UID: 26K8 1,635 | ntp | Set timezone to Europe/Berlin 3,475 | ethernet | Started 3,477 | ethernet | Connected: 100 Mbps Full Duplex, MAC: 78:21:84:45:01:BF 3,492 | ethernet | Got IP address: 192.168.1.11/24 3,789 | firmware_update | Firmware is signed by: Tinkerforge GmbH 2025-03-09 09:44:22,000 | rtc | System time set from RTC at 4,361 2025-03-09 09:44:22,633 | authentication | Web interface authentication enabled. 2025-03-09 09:44:22,778 | remote_access | Remote Access is enabled trying to connect 2025-03-09 09:44:22,862 | network | mDNS responder started 2025-03-09 09:44:23,197 | power_manager | External phase switching API enabled 2025-03-09 09:44:23,198 | charge_manager | Enabled fast single charger mode 2025-03-09 09:44:23,445 | device_name | This is warpEM (wem-26K8), a WARP Energy Manager 2025-03-09 09:44:23,634 | ntp | NTP synchronized at 6,041 2025-03-09 09:44:24,395 | network | Network connected (Ethernet) 2025-03-09 09:44:24,437 | cm_networking | Resolved warp2.local to 192.168.1.10 (via mDNS scan) 2025-03-09 09:44:27,996 | meters_sun_spec | Meter 0: Connected to 192.168.1.12:502 2025-03-09 09:44:31,188 | remote_access | Connecting to Management WireGuard peer my.warp-charger.com:51820 2025-03-09 09:44:32,266 | remote_access | Management connection connected 2025-03-09 09:44:32,268 | charge_manager | Seen all chargers. 2025-03-09 09:44:34,702 | meters_sun_spec | Meter 0: Looking for device Mn='Fronius' Md='Symo 5.0-3-M' SN='35132678' 2025-03-09 09:44:34,703 | meters_sun_spec | Meter 0: Device Mn='Fronius' Md='Symo 5.0-3-M' Opt='3.21.3-1' Vr='0.3.30.1' SN='35132678' is matching 2025-03-09 09:44:35,106 | meters_sun_spec | Meter 0: Configured SunSpec model 113/0 found at 192.168.1.12:502:1:40069 2025-03-09 09:44:35,344 | meters | Meter 0: Meter declared 23 values 2025-03-09 09:49:19,274 | uptime_tracker | Wrote last uptime to flash 2025-03-09 09:50:28,453 | em_phaseswitcher | Toggling with CP disconnect 2025-03-09 09:50:28,454 | em_phaseswitcher | Now in state 1 (command) 2025-03-09 09:50:28,865 | em_phaseswitcher | Now in state 2 (state) 2025-03-09 09:50:29,868 | em_phaseswitcher | Now in state 3 (state) 2025-03-09 09:50:30,870 | em_phaseswitcher | Now in state 4 (state) 2025-03-09 09:50:31,466 | em_phaseswitcher | Now in state 5 (command) 2025-03-09 09:50:33,468 | em_phaseswitcher | Now in state 6 (command) 2025-03-09 09:50:35,469 | em_phaseswitcher | Now in state 7 (command) 2025-03-09 09:50:36,915 | em_phaseswitcher | Now in state 0 (state) ___TRACE_LOG_START___ __begin_rtc__ 4,360 | Set time to 2025-03-09 09:44:22,000 at 4360. Quality RTC 2025-03-09 09:44:23,680 | Set time to 2025-03-09 09:44:23,633 at 6041. Quality High __end_rtc__ __begin_charge_manager__ RECV 0: phases 0 -> 1 RECV 0: phase_switch_supported 0 -> 1 2025-03-09 09:44:32,268 Hysteresis -165 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@0p ] 1: have B1 0; rotation allowed 1 2: filtered 1 to 0. Calc Wnd current_avail_for_3p 16000 Wnd (0 0 0 0)->(0 0 0 0) 3: filtered 1 to 0. 6: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 9: [ 0 ] 2025-03-09 09:44:37,270 Hysteresis -160 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@0p ] 1: have B1 0; rotation allowed 0 2: filtered 1 to 0. Calc Wnd current_avail_for_3p 16000 Wnd (0 0 0 0)->(0 0 0 0) 3: filtered 1 to 0. 6: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 9: [ 0 ] 2025-03-09 09:44:42,273 Hysteresis -155 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@0p ] 1: have B1 0; rotation allowed 0 2: filtered 1 to 0. Calc Wnd current_avail_for_3p 16000 Wnd (0 0 0 0)->(0 0 0 0) 3: filtered 1 to 0. 6: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 9: [ 0 ] 2025-03-09 09:44:47,275 Hysteresis -150 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@0p ] 1: have B1 0; rotation allowed 0 2: filtered 1 to 0. Calc Wnd current_avail_for_3p 16000 Wnd (0 0 0 0)->(0 0 0 0) 3: filtered 1 to 0. 6: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 9: [ 0 ] 2025-03-09 09:44:52,278 Hysteresis -145 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@0p ] 1: have B1 0; rotation allowed 0 2: filtered 1 to 0. Calc Wnd current_avail_for_3p 16000 Wnd (0 0 0 0)->(0 0 0 0) 3: filtered 1 to 0. 6: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 9: [ 0 ] 2025-03-09 09:44:57,280 Hysteresis -140 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@0p ] 1: have B1 0; rotation allowed 0 2: filtered 1 to 0. Calc Wnd current_avail_for_3p 16000 Wnd (0 0 0 0)->(0 0 0 0) 3: filtered 1 to 0. 6: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 9: [ 0 ] 2025-03-09 09:45:02,287 Hysteresis -135 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@0p ] 1: have B1 0; rotation allowed 0 2: filtered 1 to 0. Calc Wnd current_avail_for_3p 16000 Wnd (0 0 0 0)->(0 0 0 0) 3: filtered 1 to 0. 6: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 9: [ 0 ] 2025-03-09 09:45:07,308 Hysteresis -130 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@0p ] 1: have B1 0; rotation allowed 0 2: filtered 1 to 0. Calc Wnd current_avail_for_3p 16000 Wnd (0 0 0 0)->(0 0 0 0) 3: filtered 1 to 0. 6: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 9: [ 0 ] 2025-03-09 09:45:12,317 Hysteresis -125 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@0p ] 1: have B1 0; rotation allowed 0 2: filtered 1 to 0. Calc Wnd current_avail_for_3p 16000 Wnd (0 0 0 0)->(0 0 0 0) 3: filtered 1 to 0. 6: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 9: [ 0 ] 2025-03-09 09:45:17,320 Hysteresis -120 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@0p ] 1: have B1 0; rotation allowed 0 2: filtered 1 to 0. Calc Wnd current_avail_for_3p 16000 Wnd (0 0 0 0)->(0 0 0 0) 3: filtered 1 to 0. 6: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 9: [ 0 ] 2025-03-09 09:45:22,322 Hysteresis -115 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@0p ] 1: have B1 0; rotation allowed 0 2: filtered 1 to 0. Calc Wnd current_avail_for_3p 16000 Wnd (0 0 0 0)->(0 0 0 0) 3: filtered 1 to 0. 6: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 9: [ 0 ] 2025-03-09 09:45:27,324 Hysteresis -110 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@0p ] 1: have B1 0; rotation allowed 0 2: filtered 1 to 0. Calc Wnd current_avail_for_3p 16000 Wnd (0 0 0 0)->(0 0 0 0) 3: filtered 1 to 0. 6: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 9: [ 0 ] 2025-03-09 09:45:32,327 Hysteresis -105 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@0p ] 1: have B1 0; rotation allowed 0 2: filtered 1 to 0. Calc Wnd current_avail_for_3p 16000 Wnd (0 0 0 0)->(0 0 0 0) 3: filtered 1 to 0. 6: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 9: [ 0 ] RECV 0: supported 0 -> 6000 mA RECV 0: requested 0 -> 6000 mA (lines 0.000 0.000 0.000) 2025-03-09 09:45:37,330 Hysteresis -100 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@0p ] 1: have B1 0; rotation allowed 0 2: filtered 1 to 0. Calc Wnd current_avail_for_3p 16000 Wnd (0 0 0 0)->(0 0 0 0) 3: filtered 1 to 0. 6: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: don't have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: filtered 1 to 1, sorted to 0 9: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] charger 0: waking up 2025-03-09 09:45:42,332 Hysteresis -174 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 0 can p-switch 1 2: filtered 1 to 0. Calc Wnd current_avail_for_3p 16000 Wnd (0 0 0 0)->(0 0 0 0) 3: filtered 1 to 0. 6: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: filtered 1 to 1, sorted to 0 9: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:45:47,335 Hysteresis -169 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 0 can p-switch 1 2: filtered 1 to 0. Calc Wnd current_avail_for_3p 16000 Wnd (0 0 0 0)->(0 0 0 0) 3: filtered 1 to 0. 6: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: filtered 1 to 1, sorted to 0 9: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:45:52,338 Hysteresis -164 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 0 can p-switch 1 2: filtered 1 to 0. Calc Wnd current_avail_for_3p 16000 Wnd (0 0 0 0)->(0 0 0 0) 3: filtered 1 to 0. 6: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: filtered 1 to 1, sorted to 0 9: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:45:57,340 Hysteresis -159 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 0 can p-switch 1 2: filtered 1 to 0. Calc Wnd current_avail_for_3p 16000 Wnd (0 0 0 0)->(0 0 0 0) 3: filtered 1 to 0. 6: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: filtered 1 to 1, sorted to 0 9: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:46:02,343 Hysteresis -154 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 0 can p-switch 1 2: filtered 1 to 0. Calc Wnd current_avail_for_3p 16000 Wnd (0 0 0 0)->(0 0 0 0) 3: filtered 1 to 0. 6: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: filtered 1 to 1, sorted to 0 9: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:46:07,346 Hysteresis -149 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 0 can p-switch 1 2: filtered 1 to 0. Calc Wnd current_avail_for_3p 16000 Wnd (0 0 0 0)->(0 0 0 0) 3: filtered 1 to 0. 6: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: filtered 1 to 1, sorted to 0 9: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:46:12,349 Hysteresis -144 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 0 can p-switch 1 2: filtered 1 to 0. Calc Wnd current_avail_for_3p 16000 Wnd (0 0 0 0)->(0 0 0 0) 3: filtered 1 to 0. 6: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: filtered 1 to 1, sorted to 0 9: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:46:17,351 Hysteresis -139 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 0 can p-switch 1 2: filtered 1 to 0. Calc Wnd current_avail_for_3p 16000 Wnd (0 0 0 0)->(0 0 0 0) 3: filtered 1 to 0. 6: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: filtered 1 to 1, sorted to 0 9: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:46:22,354 Hysteresis -134 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 0 can p-switch 1 2: filtered 1 to 0. Calc Wnd current_avail_for_3p 16000 Wnd (0 0 0 0)->(0 0 0 0) 3: filtered 1 to 0. 6: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: filtered 1 to 1, sorted to 0 9: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:46:27,356 Hysteresis -129 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 0 can p-switch 1 2: filtered 1 to 0. Calc Wnd current_avail_for_3p 16000 Wnd (0 0 0 0)->(0 0 0 0) 3: filtered 1 to 0. 6: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: filtered 1 to 1, sorted to 0 9: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:46:32,359 Hysteresis -124 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 0 can p-switch 1 2: filtered 1 to 0. Calc Wnd current_avail_for_3p 16000 Wnd (0 0 0 0)->(0 0 0 0) 3: filtered 1 to 0. 6: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: filtered 1 to 1, sorted to 0 9: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:46:37,362 Hysteresis -119 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 0 can p-switch 1 2: filtered 1 to 0. Calc Wnd current_avail_for_3p 16000 Wnd (0 0 0 0)->(0 0 0 0) 3: filtered 1 to 0. 6: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: filtered 1 to 1, sorted to 0 9: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:46:42,365 Hysteresis -114 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 0 can p-switch 1 2: filtered 1 to 0. Calc Wnd current_avail_for_3p 16000 Wnd (0 0 0 0)->(0 0 0 0) 3: filtered 1 to 0. 6: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: filtered 1 to 1, sorted to 0 9: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:46:47,368 Hysteresis -109 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 0 can p-switch 1 2: filtered 1 to 0. Calc Wnd current_avail_for_3p 16000 Wnd (0 0 0 0)->(0 0 0 0) 3: filtered 1 to 0. 6: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: filtered 1 to 1, sorted to 0 9: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:46:52,371 Hysteresis -104 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 0 can p-switch 1 2: filtered 1 to 0. Calc Wnd current_avail_for_3p 16000 Wnd (0 0 0 0)->(0 0 0 0) 3: filtered 1 to 0. 6: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: filtered 1 to 1, sorted to 0 9: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:46:57,373 Hysteresis -99 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 0 can p-switch 1 2: filtered 1 to 0. Calc Wnd current_avail_for_3p 16000 Wnd (0 0 0 0)->(0 0 0 0) 3: filtered 1 to 0. 6: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: filtered 1 to 1, sorted to 0 9: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:47:02,376 Hysteresis -94 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 0 can p-switch 1 2: filtered 1 to 0. Calc Wnd current_avail_for_3p 16000 Wnd (0 0 0 0)->(0 0 0 0) 3: filtered 1 to 0. 6: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: filtered 1 to 1, sorted to 0 9: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:47:07,378 Hysteresis -89 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 0 can p-switch 1 2: filtered 1 to 0. Calc Wnd current_avail_for_3p 16000 Wnd (0 0 0 0)->(0 0 0 0) 3: filtered 1 to 0. 6: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: filtered 1 to 1, sorted to 0 9: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:47:12,381 Hysteresis -84 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 0 can p-switch 1 2: filtered 1 to 0. Calc Wnd current_avail_for_3p 16000 Wnd (0 0 0 0)->(0 0 0 0) 3: filtered 1 to 0. 6: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: filtered 1 to 1, sorted to 0 9: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:47:17,384 Hysteresis -79 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 0 can p-switch 1 2: filtered 1 to 0. Calc Wnd current_avail_for_3p 16000 Wnd (0 0 0 0)->(0 0 0 0) 3: filtered 1 to 0. 6: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: filtered 1 to 1, sorted to 0 9: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:47:22,386 Hysteresis -74 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 0 can p-switch 1 2: filtered 1 to 0. Calc Wnd current_avail_for_3p 16000 Wnd (0 0 0 0)->(0 0 0 0) 3: filtered 1 to 0. 6: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: filtered 1 to 1, sorted to 0 9: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:47:27,389 Hysteresis -69 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (6000 6000 0 0) current_avail_for_3p 10000 0 (1p known rot) wnd_max (6000 6000 0 0) Wnd (6000 6000 0 0)->(6000 6000 0 0) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 0 <= p2 raw 16000 3: wnd_min 0 <= p3 raw 16000 3: wnd_min 6000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 0 0) fair (0 10000 0 0) 7: 0: 6000@1p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:47:32,392 Hysteresis -64 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (6000 6000 0 0) current_avail_for_3p 10000 0 (1p known rot) wnd_max (6000 6000 0 0) Wnd (6000 6000 0 0)->(6000 6000 0 0) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 0 <= p2 raw 16000 3: wnd_min 0 <= p3 raw 16000 3: wnd_min 6000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 0 0) fair (0 10000 0 0) 7: 0: 6000@1p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:47:37,395 Hysteresis -59 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (6000 6000 0 0) current_avail_for_3p 10000 0 (1p known rot) wnd_max (6000 6000 0 0) Wnd (6000 6000 0 0)->(6000 6000 0 0) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 0 <= p2 raw 16000 3: wnd_min 0 <= p3 raw 16000 3: wnd_min 6000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 0 0) fair (0 10000 0 0) 7: 0: 6000@1p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:47:42,399 Hysteresis -54 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (6000 6000 0 0) current_avail_for_3p 10000 0 (1p known rot) wnd_max (6000 6000 0 0) Wnd (6000 6000 0 0)->(6000 6000 0 0) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 0 <= p2 raw 16000 3: wnd_min 0 <= p3 raw 16000 3: wnd_min 6000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 0 0) fair (0 10000 0 0) 7: 0: 6000@1p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:47:47,402 Hysteresis -49 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (6000 6000 0 0) current_avail_for_3p 10000 0 (1p known rot) wnd_max (6000 6000 0 0) Wnd (6000 6000 0 0)->(6000 6000 0 0) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 0 <= p2 raw 16000 3: wnd_min 0 <= p3 raw 16000 3: wnd_min 6000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 0 0) fair (0 10000 0 0) 7: 0: 6000@1p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:47:52,405 Hysteresis -44 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (6000 6000 0 0) current_avail_for_3p 10000 0 (1p known rot) wnd_max (6000 6000 0 0) Wnd (6000 6000 0 0)->(6000 6000 0 0) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 0 <= p2 raw 16000 3: wnd_min 0 <= p3 raw 16000 3: wnd_min 6000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 0 0) fair (0 10000 0 0) 7: 0: 6000@1p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:47:57,408 Hysteresis -39 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (6000 6000 0 0) current_avail_for_3p 10000 0 (1p known rot) wnd_max (6000 6000 0 0) Wnd (6000 6000 0 0)->(6000 6000 0 0) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 0 <= p2 raw 16000 3: wnd_min 0 <= p3 raw 16000 3: wnd_min 6000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 0 0) fair (0 10000 0 0) 7: 0: 6000@1p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:48:02,411 Hysteresis -34 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (6000 6000 0 0) current_avail_for_3p 10000 0 (1p known rot) wnd_max (6000 6000 0 0) Wnd (6000 6000 0 0)->(6000 6000 0 0) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 0 <= p2 raw 16000 3: wnd_min 0 <= p3 raw 16000 3: wnd_min 6000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 0 0) fair (0 10000 0 0) 7: 0: 6000@1p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:48:07,414 Hysteresis -29 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (6000 6000 0 0) current_avail_for_3p 10000 0 (1p known rot) wnd_max (6000 6000 0 0) Wnd (6000 6000 0 0)->(6000 6000 0 0) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 0 <= p2 raw 16000 3: wnd_min 0 <= p3 raw 16000 3: wnd_min 6000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 0 0) fair (0 10000 0 0) 7: 0: 6000@1p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:48:12,417 Hysteresis -24 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (6000 6000 0 0) current_avail_for_3p 10000 0 (1p known rot) wnd_max (6000 6000 0 0) Wnd (6000 6000 0 0)->(6000 6000 0 0) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 0 <= p2 raw 16000 3: wnd_min 0 <= p3 raw 16000 3: wnd_min 6000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 0 0) fair (0 10000 0 0) 7: 0: 6000@1p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:48:17,421 Hysteresis -19 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (6000 6000 0 0) current_avail_for_3p 10000 0 (1p known rot) wnd_max (6000 6000 0 0) Wnd (6000 6000 0 0)->(6000 6000 0 0) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 0 <= p2 raw 16000 3: wnd_min 0 <= p3 raw 16000 3: wnd_min 6000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 0 0) fair (0 10000 0 0) 7: 0: 6000@1p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:48:22,425 Hysteresis -14 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (6000 6000 0 0) current_avail_for_3p 10000 0 (1p known rot) wnd_max (6000 6000 0 0) Wnd (6000 6000 0 0)->(6000 6000 0 0) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 0 <= p2 raw 16000 3: wnd_min 0 <= p3 raw 16000 3: wnd_min 6000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 0 0) fair (0 10000 0 0) 7: 0: 6000@1p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:48:27,428 Hysteresis -9 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (6000 6000 0 0) current_avail_for_3p 10000 0 (1p known rot) wnd_max (6000 6000 0 0) Wnd (6000 6000 0 0)->(6000 6000 0 0) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 0 <= p2 raw 16000 3: wnd_min 0 <= p3 raw 16000 3: wnd_min 6000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 0 0) fair (0 10000 0 0) 7: 0: 6000@1p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:48:32,431 Hysteresis -4 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (6000 6000 0 0) current_avail_for_3p 10000 0 (1p known rot) wnd_max (6000 6000 0 0) Wnd (6000 6000 0 0)->(6000 6000 0 0) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 0 <= p2 raw 16000 3: wnd_min 0 <= p3 raw 16000 3: wnd_min 6000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 0 0) fair (0 10000 0 0) 7: 0: 6000@1p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:48:37,434 Hysteresis 0 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (6000 6000 0 0) current_avail_for_3p 10000 0 (1p known rot) wnd_max (6000 6000 0 0) Wnd (6000 6000 0 0)->(6000 6000 0 0) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 0 <= p2 raw 16000 3: wnd_min 0 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 0 0) fair (0 10000 0 0) 7: 0: 6000@1p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:48:42,438 Hysteresis 5 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (6000 6000 0 0) current_avail_for_3p 10000 0 (1p known rot) wnd_max (6000 6000 0 0) Wnd (6000 6000 0 0)->(6000 6000 0 0) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 0 <= p2 raw 16000 3: wnd_min 0 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 0 0) fair (0 10000 0 0) 7: 0: 6000@1p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:48:47,441 Hysteresis 10 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (6000 6000 0 0) current_avail_for_3p 10000 0 (1p known rot) wnd_max (6000 6000 0 0) Wnd (6000 6000 0 0)->(6000 6000 0 0) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 0 <= p2 raw 16000 3: wnd_min 0 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 0 0) fair (0 10000 0 0) 7: 0: 6000@1p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:48:52,444 Hysteresis 15 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (6000 6000 0 0) current_avail_for_3p 10000 0 (1p known rot) wnd_max (6000 6000 0 0) Wnd (6000 6000 0 0)->(6000 6000 0 0) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 0 <= p2 raw 16000 3: wnd_min 0 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 0 0) fair (0 10000 0 0) 7: 0: 6000@1p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:48:57,448 Hysteresis 20 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (6000 6000 0 0) current_avail_for_3p 10000 0 (1p known rot) wnd_max (6000 6000 0 0) Wnd (6000 6000 0 0)->(6000 6000 0 0) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 0 <= p2 raw 16000 3: wnd_min 0 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 0 0) fair (0 10000 0 0) 7: 0: 6000@1p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:49:02,451 Hysteresis 25 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (6000 6000 0 0) current_avail_for_3p 10000 0 (1p known rot) wnd_max (6000 6000 0 0) Wnd (6000 6000 0 0)->(6000 6000 0 0) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 0 <= p2 raw 16000 3: wnd_min 0 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 0 0) fair (0 10000 0 0) 7: 0: 6000@1p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:49:07,454 Hysteresis 30 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (6000 6000 0 0) current_avail_for_3p 10000 0 (1p known rot) wnd_max (6000 6000 0 0) Wnd (6000 6000 0 0)->(6000 6000 0 0) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 0 <= p2 raw 16000 3: wnd_min 0 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 0 0) fair (0 10000 0 0) 7: 0: 6000@1p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:49:12,457 Hysteresis 35 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (6000 6000 0 0) current_avail_for_3p 10000 0 (1p known rot) wnd_max (6000 6000 0 0) Wnd (6000 6000 0 0)->(6000 6000 0 0) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 0 <= p2 raw 16000 3: wnd_min 0 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 0 0) fair (0 10000 0 0) 7: 0: 6000@1p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:49:17,465 Hysteresis 40 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (6000 6000 0 0) current_avail_for_3p 10000 0 (1p known rot) wnd_max (6000 6000 0 0) Wnd (6000 6000 0 0)->(6000 6000 0 0) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 0 <= p2 raw 16000 3: wnd_min 0 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 0 0) fair (0 10000 0 0) 7: 0: 6000@1p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:49:22,475 Hysteresis 45 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (6000 6000 0 0) current_avail_for_3p 10000 0 (1p known rot) wnd_max (6000 6000 0 0) Wnd (6000 6000 0 0)->(6000 6000 0 0) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 0 <= p2 raw 16000 3: wnd_min 0 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 0 0) fair (0 10000 0 0) 7: 0: 6000@1p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:49:27,479 Hysteresis 50 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (6000 6000 0 0) current_avail_for_3p 10000 0 (1p known rot) wnd_max (6000 6000 0 0) Wnd (6000 6000 0 0)->(6000 6000 0 0) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 0 <= p2 raw 16000 3: wnd_min 0 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 0 0) fair (0 10000 0 0) 7: 0: 6000@1p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:49:32,482 Hysteresis 55 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (6000 6000 0 0) current_avail_for_3p 10000 0 (1p known rot) wnd_max (6000 6000 0 0) Wnd (6000 6000 0 0)->(6000 6000 0 0) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 0 <= p2 raw 16000 3: wnd_min 0 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 0 0) fair (0 10000 0 0) 7: 0: 6000@1p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:49:37,485 Hysteresis 60 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (6000 6000 0 0) current_avail_for_3p 10000 0 (1p known rot) wnd_max (6000 6000 0 0) Wnd (6000 6000 0 0)->(6000 6000 0 0) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 0 <= p2 raw 16000 3: wnd_min 0 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 0 0) fair (0 10000 0 0) 7: 0: 6000@1p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:49:42,489 Hysteresis 65 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (6000 6000 0 0) current_avail_for_3p 10000 0 (1p known rot) wnd_max (6000 6000 0 0) Wnd (6000 6000 0 0)->(6000 6000 0 0) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 0 <= p2 raw 16000 3: wnd_min 0 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 0 0) fair (0 10000 0 0) 7: 0: 6000@1p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:49:47,492 Hysteresis 70 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (6000 6000 0 0) current_avail_for_3p 10000 0 (1p known rot) wnd_max (6000 6000 0 0) Wnd (6000 6000 0 0)->(6000 6000 0 0) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 0 <= p2 raw 16000 3: wnd_min 0 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 0 0) fair (0 10000 0 0) 7: 0: 6000@1p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:49:52,496 Hysteresis 75 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (6000 6000 0 0) current_avail_for_3p 10000 0 (1p known rot) wnd_max (6000 6000 0 0) Wnd (6000 6000 0 0)->(6000 6000 0 0) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 0 <= p2 raw 16000 3: wnd_min 0 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 0 0) fair (0 10000 0 0) 7: 0: 6000@1p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:49:57,499 Hysteresis 80 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (6000 6000 0 0) current_avail_for_3p 10000 0 (1p known rot) wnd_max (6000 6000 0 0) Wnd (6000 6000 0 0)->(6000 6000 0 0) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 0 <= p2 raw 16000 3: wnd_min 0 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 0 0) fair (0 10000 0 0) 7: 0: 6000@1p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:50:02,503 Hysteresis 85 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (6000 6000 0 0) current_avail_for_3p 10000 0 (1p known rot) wnd_max (6000 6000 0 0) Wnd (6000 6000 0 0)->(6000 6000 0 0) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 0 <= p2 raw 16000 3: wnd_min 0 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 0 0) fair (0 10000 0 0) 7: 0: 6000@1p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:50:07,506 Hysteresis 90 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (6000 6000 0 0) current_avail_for_3p 10000 0 (1p known rot) wnd_max (6000 6000 0 0) Wnd (6000 6000 0 0)->(6000 6000 0 0) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 0 <= p2 raw 16000 3: wnd_min 0 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 0 0) fair (0 10000 0 0) 7: 0: 6000@1p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:50:12,509 Hysteresis 95 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (6000 6000 0 0) current_avail_for_3p 10000 0 (1p known rot) wnd_max (6000 6000 0 0) Wnd (6000 6000 0 0)->(6000 6000 0 0) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 0 <= p2 raw 16000 3: wnd_min 0 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 0 0) fair (0 10000 0 0) 7: 0: 6000@1p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:50:17,513 Hysteresis 100 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (6000 6000 0 0) current_avail_for_3p 10000 0 (1p known rot) wnd_max (6000 6000 0 0) Wnd (6000 6000 0 0)->(6000 6000 0 0) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 0 <= p2 raw 16000 3: wnd_min 0 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 0 0) fair (0 10000 0 0) 7: 0: 6000@1p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:50:22,516 Hysteresis 105 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (6000 6000 0 0) current_avail_for_3p 10000 0 (1p known rot) wnd_max (6000 6000 0 0) Wnd (6000 6000 0 0)->(6000 6000 0 0) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 0 <= p2 raw 16000 3: wnd_min 0 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 0 0) fair (0 10000 0 0) 7: 0: 6000@1p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@1p ] 2025-03-09 09:50:27,520 Hysteresis 110 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@1p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (6000 6000 0 0) current_avail_for_3p 10000 0 (1p known rot) wnd_max (6000 6000 0 0) Wnd (6000 6000 0 0)->(6000 6000 0 0) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 0 <= p2 raw 16000 3: wnd_min 0 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@1p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 1, sorted to 0 5: 0: Yes Wnd (0 0 0 0)->(0 0 0 0) 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 16000 16000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-6000 10000 16000 16000) min(-6000 10000 16000 16000) spread(-6000 10000 16000 16000) max_pv -6000 9: [ 0 6000@3p ] RECV 0: phases 1 -> 3 2025-03-09 09:50:32,523 Hysteresis -174 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 3: wnd_min 18000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:50:37,527 Hysteresis -169 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 3: wnd_min 18000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:50:42,530 Hysteresis -164 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 3: wnd_min 18000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:50:47,533 Hysteresis -159 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 3: wnd_min 18000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:50:52,536 Hysteresis -154 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 3: wnd_min 18000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:50:57,540 Hysteresis -149 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 3: wnd_min 18000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:51:02,543 Hysteresis -144 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 3: wnd_min 18000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:51:07,546 Hysteresis -139 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 3: wnd_min 18000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:51:12,549 Hysteresis -134 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 3: wnd_min 18000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:51:17,553 Hysteresis -129 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 3: wnd_min 18000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:51:22,556 Hysteresis -124 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 3: wnd_min 18000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:51:27,559 Hysteresis -119 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 3: wnd_min 18000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:51:32,563 Hysteresis -114 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 3: wnd_min 18000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:51:37,566 Hysteresis -109 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 3: wnd_min 18000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:51:42,569 Hysteresis -104 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 3: wnd_min 18000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:51:47,572 Hysteresis -99 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 3: wnd_min 18000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:51:52,576 Hysteresis -94 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 3: wnd_min 18000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:51:57,579 Hysteresis -89 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 3: wnd_min 18000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:52:02,582 Hysteresis -84 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 3: wnd_min 18000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:52:07,585 Hysteresis -79 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 3: wnd_min 18000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:52:12,589 Hysteresis -74 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 3: wnd_min 18000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:52:17,592 Hysteresis -69 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 3: wnd_min 18000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:52:22,595 Hysteresis -64 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 3: wnd_min 18000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:52:27,598 Hysteresis -59 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 3: wnd_min 18000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:52:32,601 Hysteresis -54 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 3: wnd_min 18000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:52:37,605 Hysteresis -49 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 3: wnd_min 18000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:52:42,608 Hysteresis -44 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 3: wnd_min 18000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:52:47,611 Hysteresis -39 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 3: wnd_min 18000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:52:52,614 Hysteresis -34 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 3: wnd_min 18000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:52:57,617 Hysteresis -29 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 3: wnd_min 18000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:53:02,621 Hysteresis -24 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 3: wnd_min 18000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:53:07,625 Hysteresis -19 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 3: wnd_min 18000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:53:12,628 Hysteresis -14 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 3: wnd_min 18000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:53:17,631 Hysteresis -9 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 3: wnd_min 18000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:53:22,635 Hysteresis -4 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 3: wnd_min 18000 > max_pv 0 hyst not elapsed 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:53:27,638 Hysteresis 0 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:53:32,649 Hysteresis 5 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:53:37,653 Hysteresis 10 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:53:42,656 Hysteresis 15 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:53:47,660 Hysteresis 20 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:53:52,664 Hysteresis 25 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:53:57,669 Hysteresis 30 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:54:02,672 Hysteresis 35 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:54:07,675 Hysteresis 40 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:54:12,679 Hysteresis 45 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:54:17,682 Hysteresis 50 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:54:22,685 Hysteresis 55 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:54:27,689 Hysteresis 60 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:54:32,693 Hysteresis 65 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:54:37,696 Hysteresis 70 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:54:42,700 Hysteresis 75 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] 2025-03-09 09:54:47,704 Hysteresis 80 0: raw(0 16000 16000 16000) min(0 16000 16000 16000) spread(0 16000 16000 16000) max_pv 0 0: [ 0 0@3p ] 1: have B1 0; rotation allowed 0 1: 0: rot_b1 0 rot_prio 0 keep_active 1 can p-switch 1 2: filtered 1 to 0. Calc Wnd 0 wnd_min (18000 6000 6000 6000) current_avail_for_3p 16000 0 (3p) wnd_max (18000 6000 6000 6000) Wnd (18000 6000 6000 6000)->(18000 6000 6000 6000) 3: filtered 1 to 1, sorted to 0 3: wnd_min 6000 <= p1 raw 16000 3: wnd_min 6000 <= p2 raw 16000 3: wnd_min 6000 <= p3 raw 16000 6: filtered 1 to 1, sorted to 0 6: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 7: filtered 1 to 1, sorted to 0 7: active (1 1 1 1) fair (0 10000 10000 10000) 7: 0: 6000@3p 8: filtered 1 to 1, sorted to 0 8: 0: 6000@3p Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. Wnd (0 0 0 0)->(0 0 0 0) 4: have active chargers. 4: filtered 1 to 0. 5: <2 active. pv reqs min 5: filtered 1 to 0. 6: filtered 1 to 0. 8: filtered 1 to 0. 9: don't have active chargers. 9: raw(-18000 10000 10000 10000) min(-18000 10000 10000 10000) spread(-18000 10000 10000 10000) max_pv -18000 9: [ 0 6000@3p ] __end_charge_manager__ __begin_meters_mbtcp__ __end_meters_mbtcp__ __begin_meters_sun_spec__ 0071003c40ef0a3e401f5c29401f5c29401f5c2943c6666743c8000043c6e6674365333343674ccd4364e66744d6c0004247eb8544d6c07540e00000c2c7ff9347fb94017fc000007fc0000044e0035c7fc000007fc000007fc000007fc00000 m0 a40069 c48 d0 0071003c40ef0a3e401f5c29401f5c29401f5c2943c6666743c8000043c6e6674365333343674ccd4364e66744d6c0004247eb8544d6c07540e00000c2c7ff9347fb94017fc000007fc0000044e0035c7fc000007fc000007fc000007fc00000 2025-03-09 09:54:14,017 m0 a40069 c48 d0 0071003c40ef0a3e401f5c29401f5c29401f5c2943c7199a43c7199a43c6b3334365199a436733334364e66744d6c0004247eb8544d6c05640c00000c2c7ffb047fb95017fc000007fc0000044e0035c7fc000007fc000007fc000007fc00000 m0 a40069 c48 d0 0071003c40ef0a3e401f5c29401f5c29401f5c2943c7199a43c7199a43c6b3334365199a436733334364e66744d6c0004247eb8544d6c05640c00000c2c7ffb047fb95017fc000007fc0000044e0035c7fc000007fc000007fc000007fc00000 2025-03-09 09:54:16,007 m0 a40069 c48 d0 0071003c40ef0a3e401f5c29401f5c29401f5c2943c6000043c7e66743c6b333436500004367199a4364cccd44d6a0004247eb8544d6a03c40a00000c2c7ffc847fb95817fc000007fc0000044e0035c7fc000007fc000007fc000007fc00000 m0 a40069 c48 d0 0071003c40ef0a3e401f5c29401f5c29401f5c2943c6000043c7e66743c6b333436500004367199a4364cccd44d6a0004247eb8544d6a03c40a00000c2c7ffc847fb95817fc000007fc0000044e0035c7fc000007fc000007fc000007fc00000 2025-03-09 09:54:18,024 m0 a40069 c48 d0 0071003c40ef0a3e401f5c29401f5c29401f5c2943c6999a43c7666743c64ccd436500004367199a4364b33344d6c0004247f5c244d6c099c100000042c7ff7247fb95817fc000007fc0000044e0035c7fc000007fc000007fc000007fc00000 m0 a40069 c48 d0 0071003c40ef0a3e401f5c29401f5c29401f5c2943c6999a43c7666743c64ccd436500004367199a4364b33344d6c0004247f5c244d6c099c100000042c7ff7247fb95817fc000007fc0000044e0035c7fc000007fc000007fc000007fc00000 2025-03-09 09:54:20,013 m0 a40069 c48 d0 0071003c40ef0a3e401f5c29401f5c29401f5c2943c6199a43c7999a43c6b333436500004367199a4364b33344d6c0004247f5c244d6c099c100000042c7ff7247fb96817fc000007fc0000044e0035c7fc000007fc000007fc000007fc00000 m0 a40069 c48 d0 0071003c40ef0a3e401f5c29401f5c29401f5c2943c6199a43c7999a43c6b333436500004367199a4364b33344d6c0004247f5c244d6c099c100000042c7ff7247fb96817fc000007fc0000044e0035c7fc000007fc000007fc000007fc00000 2025-03-09 09:54:22,078 m0 a40069 c48 d0 0071003c40ef0a3e401f5c29401f5c29401f5c2943c6333343c7999a43c680004364cccd4366e6674364b33344d6e0004247f5c244d6e0c1c110000042c7ff4c47fb96817fc000007fc0000044e0035c7fc000007fc000007fc000007fc00000 m0 a40069 c48 d0 0071003c40ef0a3e401f5c29401f5c29401f5c2943c6333343c7999a43c680004364cccd4366e6674364b33344d6e0004247f5c244d6e0c1c110000042c7ff4c47fb96817fc000007fc0000044e0035c7fc000007fc000007fc000007fc00000 2025-03-09 09:54:24,006 m0 a40069 c48 d0 0071003c40ef0a3e401f5c29401f5c29401f5c2943c6b33343c7333343c6999a436500004366e6674364b33344d700004248000044d700c1c110000042c7ff4c47fb97817fc000007fc0000044e044937fc000007fc000007fc000007fc00000 m0 a40069 c48 d0 0071003c40ef0a3e401f5c29401f5c29401f5c2943c6b33343c7333343c6999a436500004366e6674364b33344d700004248000044d700c1c110000042c7ff4c47fb97817fc000007fc0000044e044937fc000007fc000007fc000007fc00000 2025-03-09 09:54:26,033 m0 a40069 c48 d0 0071003c40ef0a3e401f5c29401f5c29401f5c2943c6199a43c7666743c7199a4365199a4367199a4364cccd44d700004248000044d7007540e00000c2c7ff9347fb97817fc000007fc0000044e044937fc000007fc000007fc000007fc00000 m0 a40069 c48 d0 0071003c40ef0a3e401f5c29401f5c29401f5c2943c6199a43c7666743c7199a4365199a4367199a4364cccd44d700004248000044d7007540e00000c2c7ff9347fb97817fc000007fc0000044e044937fc000007fc000007fc000007fc00000 2025-03-09 09:54:28,067 m0 a40069 c48 d0 0071003c40ef5c29401f5c2940200000401f5c2943c6666743c7cccd43c680004365199a436700004364cccd44d700004248000044d7005640c00000c2c7ffb047fb98017fc000007fc0000044e044937fc000007fc000007fc000007fc00000 m0 a40069 c48 d0 0071003c40ef5c29401f5c2940200000401f5c2943c6666743c7cccd43c680004365199a436700004364cccd44d700004248000044d7005640c00000c2c7ffb047fb98017fc000007fc0000044e044937fc000007fc000007fc000007fc00000 2025-03-09 09:54:30,034 m0 a40069 c48 d0 0071003c40ef5c29401f5c2940200000401f5c2943c6666743c7000043c6e6674365199a436700004364e66744d740004247f5c244d740ee41200000c2c7ff2347fb99017fc000007fc0000044e044937fc000007fc000007fc000007fc00000 m0 a40069 c48 d0 0071003c40ef5c29401f5c2940200000401f5c2943c6666743c7000043c6e6674365199a436700004364e66744d740004247f5c244d740ee41200000c2c7ff2347fb99017fc000007fc0000044e044937fc000007fc000007fc000007fc00000 2025-03-09 09:54:32,026 m0 a40069 c48 d0 0071003c40ef5c29401f5c2940200000401f5c2943c6199a43c7e66743c6cccd436500004367199a4365199a44d740004247f5c244d7412041300000c2c7fef447fb99017fc000007fc0000044e086567fc000007fc000007fc000007fc00000 m0 a40069 c48 d0 0071003c40ef5c29401f5c2940200000401f5c2943c6199a43c7e66743c6cccd436500004367199a4365199a44d740004247f5c244d7412041300000c2c7fef447fb99017fc000007fc0000044e086567fc000007fc000007fc000007fc00000 2025-03-09 09:54:34,045 m0 a40069 c48 d0 0071003c40ef5c29401f5c2940200000401f5c2943c6cccd43c7199a43c6cccd4364e6674367199a4365199a44d740004247eb8544d740ee41200000c2c7ff2347fb99817fc000007fc0000044e086567fc000007fc000007fc000007fc00000 m0 a40069 c48 d0 0071003c40ef5c29401f5c2940200000401f5c2943c6cccd43c7199a43c6cccd4364e6674367199a4365199a44d740004247eb8544d740ee41200000c2c7ff2347fb99817fc000007fc0000044e086567fc000007fc000007fc000007fc00000 2025-03-09 09:54:36,018 m0 a40069 c48 d0 0071003c40ef5c29401f5c2940200000401f5c2943c5e66743c7cccd43c7199a436500004367199a4365199a44d740004247eb8544d740c141100000c2c7ff4d47fb9a017fc000007fc0000044e086567fc000007fc000007fc000007fc00000 m0 a40069 c48 d0 0071003c40ef5c29401f5c2940200000401f5c2943c5e66743c7cccd43c7199a436500004367199a4365199a44d740004247eb8544d740c141100000c2c7ff4d47fb9a017fc000007fc0000044e086567fc000007fc000007fc000007fc00000 2025-03-09 09:54:38,110 m0 a40069 c48 d0 0071003c40ef5c29401f5c2940200000401f5c2943c6cccd43c7999a43c666674365199a4367199a4365333344d740004247eb8544d7407540e00000c2c7ff9347fb9a017fc000007fc0000044e086567fc000007fc000007fc000007fc00000 m0 a40069 c48 d0 0071003c40ef5c29401f5c2940200000401f5c2943c6cccd43c7999a43c666674365199a4367199a4365333344d740004247eb8544d7407540e00000c2c7ff9347fb9a017fc000007fc0000044e086567fc000007fc000007fc000007fc00000 2025-03-09 09:54:40,022 m0 a40069 c48 d0 0071003c40ef5c29401f5c2940200000401f5c2943c6cccd43c7999a43c666674365199a4367199a4365333344d740004247eb8544d7407540e00000c2c7ff9347fb9a817fc000007fc0000044debdd37fc000007fc000007fc000007fc00000 m0 a40069 c48 d0 0071003c40ef5c29401f5c2940200000401f5c2943c6cccd43c7999a43c666674365199a4367199a4365333344d740004247eb8544d7407540e00000c2c7ff9347fb9a817fc000007fc0000044debdd37fc000007fc000007fc000007fc00000 2025-03-09 09:54:42,051 m0 a40069 c48 d0 0071003c40f0000040200000402000004020000043c5cccd43c7b33343c7000043650000436700004365199a44d7c0004247f5c244d7c05540c00000c2c7ffb147fb9b017fc000007fc0000044de00117fc000007fc000007fc000007fc00000 m0 a40069 c48 d0 0071003c40f0000040200000402000004020000043c5cccd43c7b33343c7000043650000436700004365199a44d7c0004247f5c244d7c05540c00000c2c7ffb147fb9b017fc000007fc0000044de00117fc000007fc000007fc000007fc00000 2025-03-09 09:54:44,024 m0 a40069 c48 d0 0071003c40f0f5c24020a3d74020a3d74020a3d743c6666743c7999a43c6333343650000436700004364e66744d8c0004247f5c244d8c05540c00000c2c7ffb247fb9b817fc000007fc0000044e18cbc7fc000007fc000007fc000007fc00000 m0 a40069 c48 d0 0071003c40f0f5c24020a3d74020a3d74020a3d743c6666743c7999a43c6333343650000436700004364e66744d8c0004247f5c244d8c05540c00000c2c7ffb247fb9b817fc000007fc0000044e18cbc7fc000007fc000007fc000007fc00000 2025-03-09 09:54:46,036 m0 a40069 c48 d0 0071003c40f147ae4020a3d7402147ae4020a3d743c6333343c74ccd43c7000043650000436700004364e66744d8c0004247f5c244d8c05540c00000c2c7ffb247fb9c017fc000007fc0000044e1ebce7fc000007fc000007fc000007fc00000 m0 a40069 c48 d0 0071003c40f147ae4020a3d7402147ae4020a3d743c6333343c74ccd43c7000043650000436700004364e66744d8c0004247f5c244d8c05540c00000c2c7ffb247fb9c017fc000007fc0000044e1ebce7fc000007fc000007fc000007fc00000 2025-03-09 09:54:48,054 m0 a40069 c48 d0 0071003c40f0f5c24020a3d74020a3d74020a3d743c64ccd43c8199a43c64ccd43650000436700004365000044d8c0004247f5c244d8c09741000000c2c7ff7547fb9c817fc000007fc0000044e1ebce7fc000007fc000007fc000007fc00000 __end_meters_sun_spec__ __begin_eco__ __end_eco__