Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

solar optimizer don't start equipement on solar production anymore #82

Open
roumano opened this issue Dec 12, 2024 · 11 comments
Open

solar optimizer don't start equipement on solar production anymore #82

roumano opened this issue Dec 12, 2024 · 11 comments
Labels
documentation Improvements or additions to documentation Not a SO issue The issue is not an SO issue

Comments

@roumano
Copy link

roumano commented Dec 12, 2024

Version of the custom_component

v2.1.1

Configuration

algorithm:
   initial_temp: 1000
   min_temp: 0.1
   cooling_factor: 0.95
   max_iteration_number: 1000
devices:
   - name: "Ballon d'eau Chaude"
     entity_id: "switch.ballon_d_eau_chaude"
     power_max: 1000
     # check_usable_template: "{{ states('input_boolean.solar_optimizer_enable_ballon') }}"
     # check_usable_template: "{{ (states('sensor.lave_vaisselle_power') | float < 20) and (states('sensor.lave_linge_power') | float < 2000)  }}"
     # the minimum activation duration in minutes
     duration_min: 15
     # minimum stop duration in minutes
     duration_stop_min: 5
     action_mode: "service_call"
     activation_service: "switch/turn_on"
     deactivation_service: "switch/turn_off"
     # the state of charge minimal to use this device
     battery_soc_threshold: 50
     # 3 hours per day maximum
     max_on_time_per_day_min: 240
     # 3h per day minimum
     min_on_time_per_day_min: 180
     # ... starting at 22:30
     offpeak_time: "22:05"

Describe the bug

Since few weeks, solar optimizer don't start anymore my water boiler when i get solar production.

But

  • it's start the boiler on offpeak correctly
  • when i have excedent solar production, if i turn on manually , it's able to stop it when the solar production decrease

I've try to :

  • update home assistant ( to 2024.11.3 )
  • restart my server
  • remove/install again solar_optimizer

still the same issue

Debug log

  • Test on 2024/12/04 : (i'm still get the same behavior)
  • 13h15 : manually turn-on the switch.enable_solar_optimizer_ballon_d_eau_chaude
    • Prod: 2500W
    • 13h16: set on_time=853
    • 13h51: Set on_time=2953
    • Log of stopping as not sufficent solar production ( normal behavior) :
Dec 04 13:56:15 pi hass[750]: 2024-12-04 13:56:15.097 INFO (MainThread) [custom_components.solar_optimizer.managed_device] Ballon d'eau Chaude - Set on_time=3253
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.803 INFO (MainThread) [custom_components.solar_optimizer.coordinator] Refreshing Solar Optimizer calculation
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.803 DEBUG (MainThread) [custom_components.solar_optimizer.managed_device] Ballon d'eau Chaude is active
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.803 DEBUG (MainThread) [custom_components.solar_optimizer.managed_device] Set current_power to 1000 for device Ballon d'eau Chaude cause active and not can_change_power
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.803 DEBUG (MainThread) [custom_components.solar_optimizer.simulated_annealing_algo] Calling recuit_simule with power_consumption=527.00, solar_power_production=1231.00 sell_cost=0.00, buy_cost=0.19, tax=20.00% devices=[<custom_components.solar_optimizer.managed_device.ManagedDevice object at 0x7f572a2ba0>]
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.803 DEBUG (MainThread) [custom_components.solar_optimizer.managed_device] Ballon d'eau Chaude is active
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.804 DEBUG (MainThread) [custom_components.solar_optimizer.managed_device] Ballon d'eau Chaude is active
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.804 DEBUG (MainThread) [custom_components.solar_optimizer.simulated_annealing_algo] ---> On garde l'objectif voisin
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.804 DEBUG (MainThread) [custom_components.solar_optimizer.simulated_annealing_algo] ---> C'est la meilleure jusque là
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.804 DEBUG (MainThread) [custom_components.solar_optimizer.simulated_annealing_algo] ---> On garde l'objectif voisin
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.805 DEBUG (MainThread) [custom_components.solar_optimizer.simulated_annealing_algo] ---> On garde l'objectif voisin
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.805 DEBUG (MainThread) [custom_components.solar_optimizer.simulated_annealing_algo] ---> On garde l'objectif voisin
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.805 DEBUG (MainThread) [custom_components.solar_optimizer.simulated_annealing_algo] ---> On garde l'objectif voisin
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.805 DEBUG (MainThread) [custom_components.solar_optimizer.simulated_annealing_algo] ---> On garde l'objectif voisin
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.805 DEBUG (MainThread) [custom_components.solar_optimizer.simulated_annealing_algo] ---> On garde l'objectif voisin
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.806 DEBUG (MainThread) [custom_components.solar_optimizer.simulated_annealing_algo] ---> On garde l'objectif voisin
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.806 DEBUG (MainThread) [custom_components.solar_optimizer.simulated_annealing_algo] ---> On garde l'objectif voisin
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.806 DEBUG (MainThread) [custom_components.solar_optimizer.simulated_annealing_algo] ---> On garde l'objectif voisin
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.807 DEBUG (MainThread) [custom_components.solar_optimizer.simulated_annealing_algo] ---> On garde l'objectif voisin
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.807 DEBUG (MainThread) [custom_components.solar_optimizer.simulated_annealing_algo] ---> On garde l'objectif voisin
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.815 DEBUG (MainThread) [custom_components.solar_optimizer.coordinator] Dealing with best_solution for {'power_max': 1000, 'power_min': -1, 'power_step': 0, 'current_power': 1000, 'requested_power': 0, 'name': "Ballon d'eau Chaude", 'state': False, 'is_usable': True, 'is_waiting': False, 'can_change_power': False}
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.816 DEBUG (MainThread) [custom_components.solar_optimizer.managed_device] Ballon d'eau Chaude is active
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.816 DEBUG (MainThread) [custom_components.solar_optimizer.coordinator] Extinction de Ballon d'eau Chaude
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.816 DEBUG (MainThread) [custom_components.solar_optimizer.managed_device] Applying action Deactivate for entity switch.ballon_d_eau_chaude. requested_power=0
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.816 DEBUG (MainThread) [custom_components.solar_optimizer.managed_device] Next availability date for Ballon d'eau Chaude is 2024-12-04 14:01:55.816375+01:00
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.816 INFO (MainThread) [custom_components.solar_optimizer.managed_device] Calling service switch/turn_off for entity switch.ballon_d_eau_chaude
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.818 INFO (MainThread) [custom_components.solar_optimizer.managed_device] Sending event solar_optimizer_state_change_event with action Deactivate for entity switch.ballon_d_eau_chaude with requested_power 0 and current_power 1000
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.818 INFO (MainThread) [custom_components.solar_optimizer.coordinator] Calculated data are: {'power_production': 1231, 'power_production_brut': 711.2, 'power_consumption': 527.0, 'sell_cost': 0.0, 'buy_cost': 0.19, 'sell_tax_percent': 20.0, 'battery_soc': 71.0, 'best_solution': [{'power_max': 1000, 'power_min': -1, 'power_step': 0, 'current_power': 1000, 'requested_power': 0, 'name': "Ballon d'eau Chaude", 'state': False, 'is_usable': True, 'is_waiting': False, 'can_change_power': False}], 'best_objective': 0.0, 'total_power': 0, 'ballon_d_eau_chaude': <custom_components.solar_optimizer.managed_device.ManagedDevice object at 0x7f572a2ba0>}
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.818 DEBUG (MainThread) [custom_components.solar_optimizer.coordinator] Finished fetching Solar Optimizer data in 0.016 seconds (success: True)
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.819 DEBUG (MainThread) [custom_components.solar_optimizer.switch] Calling _handle_coordinator_update for Active
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.820 DEBUG (MainThread) [custom_components.solar_optimizer.managed_device] Ballon d'eau Chaude is active
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.820 DEBUG (MainThread) [custom_components.solar_optimizer.managed_device] Ballon d'eau Chaude is active
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.820 DEBUG (MainThread) [custom_components.solar_optimizer.managed_device] Ballon d'eau Chaude is waiting
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.820 DEBUG (MainThread) [custom_components.solar_optimizer.managed_device] Ballon d'eau Chaude is not usable
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.969 INFO (MainThread) [custom_components.solar_optimizer.sensor] Call of on_state_change at 2024-12-04 13:56:55.969409+01:00 with event <Event state_changed[L]: entity_id=switch.ballon_d_eau_chaude, old_state=<state switch.ballon_d_eau_chaude=on; icon=mdi:water-boiler, friendly_name=Ballon d'eau Chaude @ 2024-12-04T13:12:06.029947+01:00>, new_state=<state switch.ballon_d_eau_chaude=off; icon=mdi:water-boiler, friendly_name=Ballon d'eau Chaude @ 2024-12-04T13:56:55.968144+01:00>>
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.969 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] The managed device becomes off - increment the delta time
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.970 DEBUG (MainThread) [custom_components.solar_optimizer.managed_device] Ballon d'eau Chaude is not usable
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.970 INFO (MainThread) [custom_components.solar_optimizer.managed_device] Ballon d'eau Chaude - Set on_time=3294
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.970 INFO (MainThread) [custom_components.solar_optimizer.switch] Appel de on_state_change à 2024-12-04 13:56:55.970610 avec l'event <Event state_changed[L]: entity_id=switch.ballon_d_eau_chaude, old_state=<state switch.ballon_d_eau_chaude=on; icon=mdi:water-boiler, friendly_name=Ballon d'eau Chaude @ 2024-12-04T13:12:06.029947+01:00>, new_state=<state switch.ballon_d_eau_chaude=off; icon=mdi:water-boiler, friendly_name=Ballon d'eau Chaude @ 2024-12-04T13:56:55.968144+01:00>>
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.971 DEBUG (MainThread) [custom_components.solar_optimizer.managed_device] Ballon d'eau Chaude is waiting
Dec 04 13:56:55 pi hass[750]: 2024-12-04 13:56:55.971 DEBUG (MainThread) [custom_components.solar_optimizer.managed_device] Ballon d'eau Chaude is not usable
Dec 04 13:57:15 pi hass[750]: 2024-12-04 13:57:15.097 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-04 13:57:15.097641+01:00
Dec 04 13:58:15 pi hass[750]: 2024-12-04 13:58:15.098 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-04 13:58:15.098094+01:00
Dec 04 13:59:15 pi hass[750]: 2024-12-04 13:59:15.098 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-04 13:59:15.098361+01:00
Dec 04 14:00:15 pi hass[750]: 2024-12-04 14:00:15.099 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-04 14:00:15.099321+01:00
Dec 04 14:01:15 pi hass[750]: 2024-12-04 14:01:15.104 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-04 14:01:15.104461+01:00
  • Logs when solar optimizer refuse to turn-on even if solar production is very high :
Dec 05 11:43:21 pi hass[750]: 2024-12-05 11:43:21.115 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-05 11:43:21.115845+01:00
Dec 05 11:44:21 pi hass[750]: 2024-12-05 11:44:21.121 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-05 11:44:21.121103+01:00
Dec 05 11:45:21 pi hass[750]: 2024-12-05 11:45:21.142 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-05 11:45:21.142101+01:00
Dec 05 11:46:21 pi hass[750]: 2024-12-05 11:46:21.142 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-05 11:46:21.142868+01:00
Dec 05 11:46:57 pi hass[750]: 2024-12-05 11:46:57.802 INFO (MainThread) [custom_components.solar_optimizer.coordinator] Refreshing Solar Optimizer calculation
Dec 05 11:46:57 pi hass[750]: 2024-12-05 11:46:57.803 DEBUG (MainThread) [custom_components.solar_optimizer.managed_device] Set current_power to 0 for device Ballon d'eau Chaude cause not active
Dec 05 11:46:57 pi hass[750]: 2024-12-05 11:46:57.803 DEBUG (MainThread) [custom_components.solar_optimizer.simulated_annealing_algo] Calling recuit_simule with power_consumption=-2908.00, solar_power_production=3536.00 sell_cost=0.00, buy_cost=0.19, tax=20.00% devices=[<custom_components.solar_optimizer.managed_device.ManagedDevice object at 0x7f572a2ba0>]
Dec 05 11:46:57 pi hass[750]: 2024-12-05 11:46:57.813 DEBUG (MainThread) [custom_components.solar_optimizer.coordinator] Dealing with best_solution for {'power_max': 1000, 'power_min': -1, 'power_step': 0, 'current_power': 0, 'requested_power': 0, 'name': "Ballon d'eau Chaude", 'state': False, 'is_usable': True, 'is_waiting': False, 'can_change_power': False}
Dec 05 11:46:57 pi hass[750]: 2024-12-05 11:46:57.814 DEBUG (MainThread) [custom_components.solar_optimizer.coordinator] Calculated data are: {'power_production': 3536, 'power_production_brut': 3591.1, 'power_consumption': -2908.0, 'sell_cost': 0.0, 'buy_cost': 0.19, 'sell_tax_percent': 20.0, 'battery_soc': 53.0, 'best_solution': [{'power_max': 1000, 'power_min': -1, 'power_step': 0, 'current_power': 0, 'requested_power': 0, 'name': "Ballon d'eau Chaude", 'state': False, 'is_usable': True, 'is_waiting': False, 'can_change_power': False}], 'best_objective': 0.0, 'total_power': 0, 'ballon_d_eau_chaude': <custom_components.solar_optimizer.managed_device.ManagedDevice object at 0x7f572a2ba0>}
Dec 05 11:46:57 pi hass[750]: 2024-12-05 11:46:57.814 DEBUG (MainThread) [custom_components.solar_optimizer.coordinator] Finished fetching Solar Optimizer data in 0.012 seconds (success: True)
Dec 05 11:46:57 pi hass[750]: 2024-12-05 11:46:57.815 DEBUG (MainThread) [custom_components.solar_optimizer.switch] Calling _handle_coordinator_update for Active
Dec 05 11:47:21 pi hass[750]: 2024-12-05 11:47:21.143 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-05 11:47:21.143306+01:00
Dec 05 11:48:21 pi hass[750]: 2024-12-05 11:48:21.146 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-05 11:48:21.146101+01:00
Dec 05 11:49:21 pi hass[750]: 2024-12-05 11:49:21.159 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-05 11:49:21.159634+01:00
Dec 05 11:50:21 pi hass[750]: 2024-12-05 11:50:21.160 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-05 11:50:21.160407+01:00
Dec 05 11:51:21 pi hass[750]: 2024-12-05 11:51:21.161 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-05 11:51:21.161055+01:00
Dec 05 11:51:57 pi hass[750]: 2024-12-05 11:51:57.802 INFO (MainThread) [custom_components.solar_optimizer.coordinator] Refreshing Solar Optimizer calculation
Dec 05 11:51:57 pi hass[750]: 2024-12-05 11:51:57.803 DEBUG (MainThread) [custom_components.solar_optimizer.managed_device] Set current_power to 0 for device Ballon d'eau Chaude cause not active
Dec 05 11:51:57 pi hass[750]: 2024-12-05 11:51:57.803 DEBUG (MainThread) [custom_components.solar_optimizer.simulated_annealing_algo] Calling recuit_simule with power_consumption=-2188.00, solar_power_production=3128.00 sell_cost=0.00, buy_cost=0.19, tax=20.00% devices=[<custom_components.solar_optimizer.managed_device.ManagedDevice object at 0x7f572a2ba0>]
Dec 05 11:51:57 pi hass[750]: 2024-12-05 11:51:57.813 DEBUG (MainThread) [custom_components.solar_optimizer.coordinator] Dealing with best_solution for {'power_max': 1000, 'power_min': -1, 'power_step': 0, 'current_power': 0, 'requested_power': 0, 'name': "Ballon d'eau Chaude", 'state': False, 'is_usable': True, 'is_waiting': False, 'can_change_power': False}
Dec 05 11:51:57 pi hass[750]: 2024-12-05 11:51:57.814 DEBUG (MainThread) [custom_components.solar_optimizer.coordinator] Calculated data are: {'power_production': 3128, 'power_production_brut': 2719.8, 'power_consumption': -2188.0, 'sell_cost': 0.0, 'buy_cost': 0.19, 'sell_tax_percent': 20.0, 'battery_soc': 54.0, 'best_solution': [{'power_max': 1000, 'power_min': -1, 'power_step': 0, 'current_power': 0, 'requested_power': 0, 'name': "Ballon d'eau Chaude", 'state': False, 'is_usable': True, 'is_waiting': False, 'can_change_power': False}], 'best_objective': 0.0, 'total_power': 0, 'ballon_d_eau_chaude': <custom_components.solar_optimizer.managed_device.ManagedDevice object at 0x7f572a2ba0>}
Dec 05 11:51:57 pi hass[750]: 2024-12-05 11:51:57.814 DEBUG (MainThread) [custom_components.solar_optimizer.coordinator] Finished fetching Solar Optimizer data in 0.012 seconds (success: True)
Dec 05 11:51:57 pi hass[750]: 2024-12-05 11:51:57.815 DEBUG (MainThread) [custom_components.solar_optimizer.switch] Calling _handle_coordinator_update for Active
Dec 05 11:52:21 pi hass[750]: 2024-12-05 11:52:21.162 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-05 11:52:21.162063+01:00
@jmcollin78
Copy link
Owner

Hello, when you have this kind of issue it is often that your consumption and production sensors are not valid.

Can you show me the curves of the sensor you have configured into SO ?
And please re-read this: https://github.com/jmcollin78/solar_optimizer/blob/main/README.md#configure-integration

@roumano
Copy link
Author

roumano commented Dec 12, 2024

Just to show, my solar_optimizer configuration to show, i'm not making a mistake about i'm using a wrong senso :
Capture d’écran du 2024-12-12 21-56-50
i'm using these 2 sensors :

  • instantaneous net consumption
  • PV Puissance Instantanée

The instantaneous net consumption : ( i still have it in home assistant for the 4th decembre but in long retention so it's not so precise )
Capture d’écran du 2024-12-12 21-59-12

PV Puissance Instantanée : i don't have it anymore for the 4 decembre, but i also push it on influxdb, so please found a screenshot from my grafana :

But we can use any other day like today where it's was a perfect solar day :

Capture d’écran du 2024-12-12 22-01-15
Capture d’écran du 2024-12-12 22-11-16

log of today from 10h30 to 11h10, solar production explose literally from power_consumption=10.00, solar_power_production=260.00 (at 10:30) to power_consumption=-3108.00, solar_power_production=2447.00 (at 10:40)
but the boiler wasn't start by solar optimizer ( i start it manually at 11h10)

Dec 12 10:30:30 pi hass[165340]: 2024-12-12 10:30:30.450 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 10:30:30.450271+01:00
Dec 12 10:30:40 pi hass[165340]: 2024-12-12 10:30:40.124 INFO (MainThread) [custom_components.solar_optimizer.coordinator] Refreshing Solar Optimizer calculation
Dec 12 10:30:40 pi hass[165340]: 2024-12-12 10:30:40.124 DEBUG (MainThread) [custom_components.solar_optimizer.managed_device] Set current_power to 0 for device Ballon d'eau Chaude cause not active
Dec 12 10:30:40 pi hass[165340]: 2024-12-12 10:30:40.124 DEBUG (MainThread) [custom_components.solar_optimizer.simulated_annealing_algo] Calling recuit_simule with power_consumption=10.00, solar_power_production=260.00 sell_cost=0.00, buy_cost=0.19, tax=20.00% devices=[<custom_components.solar_optimizer.managed_device.ManagedDevice object at 0x7f4d6c1430>]
Dec 12 10:30:40 pi hass[165340]: 2024-12-12 10:30:40.125 DEBUG (MainThread) [custom_components.solar_optimizer.simulated_annealing_algo] ---> On garde l'objectif voisin
Dec 12 10:30:40 pi hass[165340]: 2024-12-12 10:30:40.125 DEBUG (MainThread) [custom_components.solar_optimizer.simulated_annealing_algo] ---> On garde l'objectif voisin
Dec 12 10:30:40 pi hass[165340]: 2024-12-12 10:30:40.125 DEBUG (MainThread) [custom_components.solar_optimizer.simulated_annealing_algo] ---> On garde l'objectif voisin
Dec 12 10:30:40 pi hass[165340]: 2024-12-12 10:30:40.134 DEBUG (MainThread) [custom_components.solar_optimizer.coordinator] Dealing with best_solution for {'power_max': 1000, 'power_min': -1, 'power_step': 0, 'current_power': 0, 'requested_power': 0, 'name': "Ballon d'eau Chaude", 'state': False, 'is_usable': True, 'is_waiting': False, 'can_change_power': False}
Dec 12 10:30:40 pi hass[165340]: 2024-12-12 10:30:40.135 DEBUG (MainThread) [custom_components.solar_optimizer.coordinator] Calculated data are: {'power_production': 260, 'power_production_brut': 264.0, 'power_consumption': 10.0, 'sell_cost': 0.0, 'buy_cost': 0.19, 'sell_tax_percent': 20.0, 'battery_soc': 58.0, 'best_solution': [{'power_max': 1000, 'power_min': -1, 'power_step': 0, 'current_power': 0, 'requested_power': 0, 'name': "Ballon d'eau Chaude", 'state': False, 'is_usable': True, 'is_waiting': False, 'can_change_power': False}], 'best_objective': 10.0, 'total_power': 0, 'ballon_d_eau_chaude': <custom_components.solar_optimizer.managed_device.ManagedDevice object at 0x7f4d6c1430>}
Dec 12 10:30:40 pi hass[165340]: 2024-12-12 10:30:40.135 DEBUG (MainThread) [custom_components.solar_optimizer.coordinator] Finished fetching Solar Optimizer data in 0.011 seconds (success: True)
Dec 12 10:30:40 pi hass[165340]: 2024-12-12 10:30:40.136 DEBUG (MainThread) [custom_components.solar_optimizer.switch] Calling _handle_coordinator_update for Active
Dec 12 10:31:30 pi hass[165340]: 2024-12-12 10:31:30.451 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 10:31:30.451092+01:00
Dec 12 10:32:30 pi hass[165340]: 2024-12-12 10:32:30.451 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 10:32:30.451678+01:00
Dec 12 10:33:32 pi hass[165340]: 2024-12-12 10:33:32.524 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 10:33:32.524896+01:00
Dec 12 10:34:32 pi hass[165340]: 2024-12-12 10:34:32.526 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 10:34:32.526668+01:00
Dec 12 10:35:32 pi hass[165340]: 2024-12-12 10:35:32.527 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 10:35:32.527152+01:00
Dec 12 10:35:40 pi hass[165340]: 2024-12-12 10:35:40.124 INFO (MainThread) [custom_components.solar_optimizer.coordinator] Refreshing Solar Optimizer calculation
Dec 12 10:35:40 pi hass[165340]: 2024-12-12 10:35:40.124 DEBUG (MainThread) [custom_components.solar_optimizer.managed_device] Set current_power to 0 for device Ballon d'eau Chaude cause not active
Dec 12 10:35:40 pi hass[165340]: 2024-12-12 10:35:40.124 DEBUG (MainThread) [custom_components.solar_optimizer.simulated_annealing_algo] Calling recuit_simule with power_consumption=-2594.00, solar_power_production=1580.00 sell_cost=0.00, buy_cost=0.19, tax=20.00% devices=[<custom_components.solar_optimizer.managed_device.ManagedDevice object at 0x7f4d6c1430>]
Dec 12 10:35:40 pi hass[165340]: 2024-12-12 10:35:40.135 DEBUG (MainThread) [custom_components.solar_optimizer.coordinator] Dealing with best_solution for {'power_max': 1000, 'power_min': -1, 'power_step': 0, 'current_power': 0, 'requested_power': 0, 'name': "Ballon d'eau Chaude", 'state': False, 'is_usable': True, 'is_waiting': False, 'can_change_power': False}
Dec 12 10:35:40 pi hass[165340]: 2024-12-12 10:35:40.135 DEBUG (MainThread) [custom_components.solar_optimizer.coordinator] Calculated data are: {'power_production': 1580, 'power_production_brut': 2899.8, 'power_consumption': -2594.0, 'sell_cost': 0.0, 'buy_cost': 0.19, 'sell_tax_percent': 20.0, 'battery_soc': 58.0, 'best_solution': [{'power_max': 1000, 'power_min': -1, 'power_step': 0, 'current_power': 0, 'requested_power': 0, 'name': "Ballon d'eau Chaude", 'state': False, 'is_usable': True, 'is_waiting': False, 'can_change_power': False}], 'best_objective': 0.0, 'total_power': 0, 'ballon_d_eau_chaude': <custom_components.solar_optimizer.managed_device.ManagedDevice object at 0x7f4d6c1430>}
Dec 12 10:35:40 pi hass[165340]: 2024-12-12 10:35:40.136 DEBUG (MainThread) [custom_components.solar_optimizer.coordinator] Finished fetching Solar Optimizer data in 0.012 seconds (success: True)
Dec 12 10:35:40 pi hass[165340]: 2024-12-12 10:35:40.136 DEBUG (MainThread) [custom_components.solar_optimizer.switch] Calling _handle_coordinator_update for Active
Dec 12 10:36:32 pi hass[165340]: 2024-12-12 10:36:32.529 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 10:36:32.528991+01:00
Dec 12 10:37:32 pi hass[165340]: 2024-12-12 10:37:32.529 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 10:37:32.529554+01:00
Dec 12 10:38:32 pi hass[165340]: 2024-12-12 10:38:32.530 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 10:38:32.530398+01:00
Dec 12 10:39:32 pi hass[165340]: 2024-12-12 10:39:32.531 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 10:39:32.531025+01:00
Dec 12 10:40:32 pi hass[165340]: 2024-12-12 10:40:32.536 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 10:40:32.536453+01:00
Dec 12 10:40:40 pi hass[165340]: 2024-12-12 10:40:40.124 INFO (MainThread) [custom_components.solar_optimizer.coordinator] Refreshing Solar Optimizer calculation
Dec 12 10:40:40 pi hass[165340]: 2024-12-12 10:40:40.124 DEBUG (MainThread) [custom_components.solar_optimizer.managed_device] Set current_power to 0 for device Ballon d'eau Chaude cause not active
Dec 12 10:40:40 pi hass[165340]: 2024-12-12 10:40:40.124 DEBUG (MainThread) [custom_components.solar_optimizer.simulated_annealing_algo] Calling recuit_simule with power_consumption=-3108.00, solar_power_production=2447.00 sell_cost=0.00, buy_cost=0.19, tax=20.00% devices=[<custom_components.solar_optimizer.managed_device.ManagedDevice object at 0x7f4d6c1430>]
Dec 12 10:40:40 pi hass[165340]: 2024-12-12 10:40:40.134 DEBUG (MainThread) [custom_components.solar_optimizer.coordinator] Dealing with best_solution for {'power_max': 1000, 'power_min': -1, 'power_step': 0, 'current_power': 0, 'requested_power': 0, 'name': "Ballon d'eau Chaude", 'state': False, 'is_usable': True, 'is_waiting': False, 'can_change_power': False}
Dec 12 10:40:40 pi hass[165340]: 2024-12-12 10:40:40.135 DEBUG (MainThread) [custom_components.solar_optimizer.coordinator] Calculated data are: {'power_production': 2447, 'power_production_brut': 3314.8, 'power_consumption': -3108.0, 'sell_cost': 0.0, 'buy_cost': 0.19, 'sell_tax_percent': 20.0, 'battery_soc': 60.0, 'best_solution': [{'power_max': 1000, 'power_min': -1, 'power_step': 0, 'current_power': 0, 'requested_power': 0, 'name': "Ballon d'eau Chaude", 'state': False, 'is_usable': True, 'is_waiting': False, 'can_change_power': False}], 'best_objective': 0.0, 'total_power': 0, 'ballon_d_eau_chaude': <custom_components.solar_optimizer.managed_device.ManagedDevice object at 0x7f4d6c1430>}
Dec 12 10:40:40 pi hass[165340]: 2024-12-12 10:40:40.135 DEBUG (MainThread) [custom_components.solar_optimizer.coordinator] Finished fetching Solar Optimizer data in 0.011 seconds (success: True)
Dec 12 10:40:40 pi hass[165340]: 2024-12-12 10:40:40.136 DEBUG (MainThread) [custom_components.solar_optimizer.switch] Calling _handle_coordinator_update for Active
Dec 12 10:41:32 pi hass[165340]: 2024-12-12 10:41:32.539 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 10:41:32.539552+01:00
Dec 12 10:42:32 pi hass[165340]: 2024-12-12 10:42:32.541 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 10:42:32.541379+01:00
Dec 12 10:43:32 pi hass[165340]: 2024-12-12 10:43:32.541 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 10:43:32.541690+01:00
Dec 12 10:44:32 pi hass[165340]: 2024-12-12 10:44:32.542 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 10:44:32.542518+01:00
Dec 12 10:45:32 pi hass[165340]: 2024-12-12 10:45:32.543 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 10:45:32.543218+01:00
Dec 12 10:45:40 pi hass[165340]: 2024-12-12 10:45:40.124 INFO (MainThread) [custom_components.solar_optimizer.coordinator] Refreshing Solar Optimizer calculation
Dec 12 10:45:40 pi hass[165340]: 2024-12-12 10:45:40.124 DEBUG (MainThread) [custom_components.solar_optimizer.managed_device] Set current_power to 0 for device Ballon d'eau Chaude cause not active
Dec 12 10:45:40 pi hass[165340]: 2024-12-12 10:45:40.124 DEBUG (MainThread) [custom_components.solar_optimizer.simulated_annealing_algo] Calling recuit_simule with power_consumption=-3204.00, solar_power_production=2868.00 sell_cost=0.00, buy_cost=0.19, tax=20.00% devices=[<custom_components.solar_optimizer.managed_device.ManagedDevice object at 0x7f4d6c1430>]
Dec 12 10:45:40 pi hass[165340]: 2024-12-12 10:45:40.134 DEBUG (MainThread) [custom_components.solar_optimizer.coordinator] Dealing with best_solution for {'power_max': 1000, 'power_min': -1, 'power_step': 0, 'current_power': 0, 'requested_power': 0, 'name': "Ballon d'eau Chaude", 'state': False, 'is_usable': True, 'is_waiting': False, 'can_change_power': False}
Dec 12 10:45:40 pi hass[165340]: 2024-12-12 10:45:40.135 DEBUG (MainThread) [custom_components.solar_optimizer.coordinator] Calculated data are: {'power_production': 2868, 'power_production_brut': 3288.1, 'power_consumption': -3204.0, 'sell_cost': 0.0, 'buy_cost': 0.19, 'sell_tax_percent': 20.0, 'battery_soc': 62.0, 'best_solution': [{'power_max': 1000, 'power_min': -1, 'power_step': 0, 'current_power': 0, 'requested_power': 0, 'name': "Ballon d'eau Chaude", 'state': False, 'is_usable': True, 'is_waiting': False, 'can_change_power': False}], 'best_objective': 0.0, 'total_power': 0, 'ballon_d_eau_chaude': <custom_components.solar_optimizer.managed_device.ManagedDevice object at 0x7f4d6c1430>}
Dec 12 10:45:40 pi hass[165340]: 2024-12-12 10:45:40.135 DEBUG (MainThread) [custom_components.solar_optimizer.coordinator] Finished fetching Solar Optimizer data in 0.011 seconds (success: True)
Dec 12 10:45:40 pi hass[165340]: 2024-12-12 10:45:40.136 DEBUG (MainThread) [custom_components.solar_optimizer.switch] Calling _handle_coordinator_update for Active
Dec 12 10:46:32 pi hass[165340]: 2024-12-12 10:46:32.544 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 10:46:32.544324+01:00
Dec 12 10:47:32 pi hass[165340]: 2024-12-12 10:47:32.545 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 10:47:32.545363+01:00
Dec 12 10:48:35 pi hass[165340]: 2024-12-12 10:48:35.669 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 10:48:35.669682+01:00
Dec 12 10:49:35 pi hass[165340]: 2024-12-12 10:49:35.670 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 10:49:35.670051+01:00
Dec 12 10:50:35 pi hass[165340]: 2024-12-12 10:50:35.670 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 10:50:35.670875+01:00
Dec 12 10:50:40 pi hass[165340]: 2024-12-12 10:50:40.124 INFO (MainThread) [custom_components.solar_optimizer.coordinator] Refreshing Solar Optimizer calculation
Dec 12 10:50:40 pi hass[165340]: 2024-12-12 10:50:40.124 DEBUG (MainThread) [custom_components.solar_optimizer.managed_device] Set current_power to 0 for device Ballon d'eau Chaude cause not active
Dec 12 10:50:40 pi hass[165340]: 2024-12-12 10:50:40.124 DEBUG (MainThread) [custom_components.solar_optimizer.simulated_annealing_algo] Calling recuit_simule with power_consumption=-3310.00, solar_power_production=3096.00 sell_cost=0.00, buy_cost=0.19, tax=20.00% devices=[<custom_components.solar_optimizer.managed_device.ManagedDevice object at 0x7f4d6c1430>]
Dec 12 10:50:40 pi hass[165340]: 2024-12-12 10:50:40.134 DEBUG (MainThread) [custom_components.solar_optimizer.coordinator] Dealing with best_solution for {'power_max': 1000, 'power_min': -1, 'power_step': 0, 'current_power': 0, 'requested_power': 0, 'name': "Ballon d'eau Chaude", 'state': False, 'is_usable': True, 'is_waiting': False, 'can_change_power': False}
Dec 12 10:50:40 pi hass[165340]: 2024-12-12 10:50:40.135 DEBUG (MainThread) [custom_components.solar_optimizer.coordinator] Calculated data are: {'power_production': 3096, 'power_production_brut': 3325.0, 'power_consumption': -3310.0, 'sell_cost': 0.0, 'buy_cost': 0.19, 'sell_tax_percent': 20.0, 'battery_soc': 63.0, 'best_solution': [{'power_max': 1000, 'power_min': -1, 'power_step': 0, 'current_power': 0, 'requested_power': 0, 'name': "Ballon d'eau Chaude", 'state': False, 'is_usable': True, 'is_waiting': False, 'can_change_power': False}], 'best_objective': 0.0, 'total_power': 0, 'ballon_d_eau_chaude': <custom_components.solar_optimizer.managed_device.ManagedDevice object at 0x7f4d6c1430>}
Dec 12 10:50:40 pi hass[165340]: 2024-12-12 10:50:40.135 DEBUG (MainThread) [custom_components.solar_optimizer.coordinator] Finished fetching Solar Optimizer data in 0.011 seconds (success: True)
Dec 12 10:50:40 pi hass[165340]: 2024-12-12 10:50:40.136 DEBUG (MainThread) [custom_components.solar_optimizer.switch] Calling _handle_coordinator_update for Active
Dec 12 10:51:35 pi hass[165340]: 2024-12-12 10:51:35.671 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 10:51:35.671716+01:00
Dec 12 10:52:35 pi hass[165340]: 2024-12-12 10:52:35.673 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 10:52:35.673192+01:00
Dec 12 10:53:35 pi hass[165340]: 2024-12-12 10:53:35.677 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 10:53:35.677404+01:00
Dec 12 10:54:35 pi hass[165340]: 2024-12-12 10:54:35.678 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 10:54:35.678602+01:00
Dec 12 10:55:35 pi hass[165340]: 2024-12-12 10:55:35.680 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 10:55:35.679953+01:00
Dec 12 10:55:40 pi hass[165340]: 2024-12-12 10:55:40.124 INFO (MainThread) [custom_components.solar_optimizer.coordinator] Refreshing Solar Optimizer calculation
Dec 12 10:55:40 pi hass[165340]: 2024-12-12 10:55:40.124 DEBUG (MainThread) [custom_components.solar_optimizer.managed_device] Set current_power to 0 for device Ballon d'eau Chaude cause not active
Dec 12 10:55:40 pi hass[165340]: 2024-12-12 10:55:40.125 DEBUG (MainThread) [custom_components.solar_optimizer.simulated_annealing_algo] Calling recuit_simule with power_consumption=-3377.00, solar_power_production=3200.00 sell_cost=0.00, buy_cost=0.19, tax=20.00% devices=[<custom_components.solar_optimizer.managed_device.ManagedDevice object at 0x7f4d6c1430>]
Dec 12 10:55:40 pi hass[165340]: 2024-12-12 10:55:40.135 DEBUG (MainThread) [custom_components.solar_optimizer.coordinator] Dealing with best_solution for {'power_max': 1000, 'power_min': -1, 'power_step': 0, 'current_power': 0, 'requested_power': 0, 'name': "Ballon d'eau Chaude", 'state': False, 'is_usable': True, 'is_waiting': False, 'can_change_power': False}
Dec 12 10:55:40 pi hass[165340]: 2024-12-12 10:55:40.135 DEBUG (MainThread) [custom_components.solar_optimizer.coordinator] Calculated data are: {'power_production': 3200, 'power_production_brut': 3303.8, 'power_consumption': -3377.0, 'sell_cost': 0.0, 'buy_cost': 0.19, 'sell_tax_percent': 20.0, 'battery_soc': 65.0, 'best_solution': [{'power_max': 1000, 'power_min': -1, 'power_step': 0, 'current_power': 0, 'requested_power': 0, 'name': "Ballon d'eau Chaude", 'state': False, 'is_usable': True, 'is_waiting': False, 'can_change_power': False}], 'best_objective': 0.0, 'total_power': 0, 'ballon_d_eau_chaude': <custom_components.solar_optimizer.managed_device.ManagedDevice object at 0x7f4d6c1430>}
Dec 12 10:55:40 pi hass[165340]: 2024-12-12 10:55:40.136 DEBUG (MainThread) [custom_components.solar_optimizer.coordinator] Finished fetching Solar Optimizer data in 0.012 seconds (success: True)
Dec 12 10:55:40 pi hass[165340]: 2024-12-12 10:55:40.136 DEBUG (MainThread) [custom_components.solar_optimizer.switch] Calling _handle_coordinator_update for Active
Dec 12 10:56:35 pi hass[165340]: 2024-12-12 10:56:35.680 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 10:56:35.680638+01:00
Dec 12 10:57:35 pi hass[165340]: 2024-12-12 10:57:35.681 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 10:57:35.681362+01:00
Dec 12 10:58:35 pi hass[165340]: 2024-12-12 10:58:35.681 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 10:58:35.681734+01:00
Dec 12 10:59:35 pi hass[165340]: 2024-12-12 10:59:35.682 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 10:59:35.682481+01:00
Dec 12 11:00:35 pi hass[165340]: 2024-12-12 11:00:35.683 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 11:00:35.683202+01:00
Dec 12 11:00:40 pi hass[165340]: 2024-12-12 11:00:40.124 INFO (MainThread) [custom_components.solar_optimizer.coordinator] Refreshing Solar Optimizer calculation
Dec 12 11:00:40 pi hass[165340]: 2024-12-12 11:00:40.125 DEBUG (MainThread) [custom_components.solar_optimizer.managed_device] Set current_power to 0 for device Ballon d'eau Chaude cause not active
Dec 12 11:00:40 pi hass[165340]: 2024-12-12 11:00:40.125 DEBUG (MainThread) [custom_components.solar_optimizer.simulated_annealing_algo] Calling recuit_simule with power_consumption=-3515.00, solar_power_production=3282.00 sell_cost=0.00, buy_cost=0.19, tax=20.00% devices=[<custom_components.solar_optimizer.managed_device.ManagedDevice object at 0x7f4d6c1430>]
Dec 12 11:00:40 pi hass[165340]: 2024-12-12 11:00:40.152 DEBUG (MainThread) [custom_components.solar_optimizer.coordinator] Dealing with best_solution for {'power_max': 1000, 'power_min': -1, 'power_step': 0, 'current_power': 0, 'requested_power': 0, 'name': "Ballon d'eau Chaude", 'state': False, 'is_usable': True, 'is_waiting': False, 'can_change_power': False}
Dec 12 11:00:40 pi hass[165340]: 2024-12-12 11:00:40.153 DEBUG (MainThread) [custom_components.solar_optimizer.coordinator] Calculated data are: {'power_production': 3282, 'power_production_brut': 3363.5, 'power_consumption': -3515.0, 'sell_cost': 0.0, 'buy_cost': 0.19, 'sell_tax_percent': 20.0, 'battery_soc': 66.0, 'best_solution': [{'power_max': 1000, 'power_min': -1, 'power_step': 0, 'current_power': 0, 'requested_power': 0, 'name': "Ballon d'eau Chaude", 'state': False, 'is_usable': True, 'is_waiting': False, 'can_change_power': False}], 'best_objective': 0.0, 'total_power': 0, 'ballon_d_eau_chaude': <custom_components.solar_optimizer.managed_device.ManagedDevice object at 0x7f4d6c1430>}
Dec 12 11:00:40 pi hass[165340]: 2024-12-12 11:00:40.153 DEBUG (MainThread) [custom_components.solar_optimizer.coordinator] Finished fetching Solar Optimizer data in 0.029 seconds (success: True)
Dec 12 11:00:40 pi hass[165340]: 2024-12-12 11:00:40.156 DEBUG (MainThread) [custom_components.solar_optimizer.switch] Calling _handle_coordinator_update for Active
Dec 12 11:01:35 pi hass[165340]: 2024-12-12 11:01:35.685 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 11:01:35.685319+01:00
Dec 12 11:02:35 pi hass[165340]: 2024-12-12 11:02:35.686 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 11:02:35.686011+01:00
Dec 12 11:03:37 pi hass[165340]: 2024-12-12 11:03:37.406 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 11:03:37.406293+01:00
Dec 12 11:04:37 pi hass[165340]: 2024-12-12 11:04:37.407 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 11:04:37.407562+01:00
Dec 12 11:05:37 pi hass[165340]: 2024-12-12 11:05:37.408 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 11:05:37.408913+01:00
Dec 12 11:05:40 pi hass[165340]: 2024-12-12 11:05:40.124 INFO (MainThread) [custom_components.solar_optimizer.coordinator] Refreshing Solar Optimizer calculation
Dec 12 11:05:40 pi hass[165340]: 2024-12-12 11:05:40.124 DEBUG (MainThread) [custom_components.solar_optimizer.managed_device] Set current_power to 0 for device Ballon d'eau Chaude cause not active
Dec 12 11:05:40 pi hass[165340]: 2024-12-12 11:05:40.125 DEBUG (MainThread) [custom_components.solar_optimizer.simulated_annealing_algo] Calling recuit_simule with power_consumption=-3623.00, solar_power_production=3341.00 sell_cost=0.00, buy_cost=0.19, tax=20.00% devices=[<custom_components.solar_optimizer.managed_device.ManagedDevice object at 0x7f4d6c1430>]
Dec 12 11:05:40 pi hass[165340]: 2024-12-12 11:05:40.136 DEBUG (MainThread) [custom_components.solar_optimizer.coordinator] Dealing with best_solution for {'power_max': 1000, 'power_min': -1, 'power_step': 0, 'current_power': 0, 'requested_power': 0, 'name': "Ballon d'eau Chaude", 'state': False, 'is_usable': True, 'is_waiting': False, 'can_change_power': False}
Dec 12 11:05:40 pi hass[165340]: 2024-12-12 11:05:40.136 DEBUG (MainThread) [custom_components.solar_optimizer.coordinator] Calculated data are: {'power_production': 3341, 'power_production_brut': 3400.8, 'power_consumption': -3623.0, 'sell_cost': 0.0, 'buy_cost': 0.19, 'sell_tax_percent': 20.0, 'battery_soc': 68.0, 'best_solution': [{'power_max': 1000, 'power_min': -1, 'power_step': 0, 'current_power': 0, 'requested_power': 0, 'name': "Ballon d'eau Chaude", 'state': False, 'is_usable': True, 'is_waiting': False, 'can_change_power': False}], 'best_objective': 0.0, 'total_power': 0, 'ballon_d_eau_chaude': <custom_components.solar_optimizer.managed_device.ManagedDevice object at 0x7f4d6c1430>}
Dec 12 11:05:40 pi hass[165340]: 2024-12-12 11:05:40.136 DEBUG (MainThread) [custom_components.solar_optimizer.coordinator] Finished fetching Solar Optimizer data in 0.012 seconds (success: True)
Dec 12 11:05:40 pi hass[165340]: 2024-12-12 11:05:40.137 DEBUG (MainThread) [custom_components.solar_optimizer.switch] Calling _handle_coordinator_update for Active
Dec 12 11:06:37 pi hass[165340]: 2024-12-12 11:06:37.409 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 11:06:37.409337+01:00
Dec 12 11:07:37 pi hass[165340]: 2024-12-12 11:07:37.410 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 11:07:37.410443+01:00
Dec 12 11:08:37 pi hass[165340]: 2024-12-12 11:08:37.410 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 11:08:37.410859+01:00
Dec 12 11:09:37 pi hass[165340]: 2024-12-12 11:09:37.412 DEBUG (MainThread) [custom_components.solar_optimizer.sensor] Call of _on_update_on_time at 2024-12-12 11:09:37.412090+01:00

i've read, 5 or 10 times the documentation to try to find the issue

@jmcollin78
Copy link
Owner

Hello, I wonder if the artefact on the production curve is not the source of the issue. I'm talking about that:

Capture d’écran 2024-12-17 à 23 20 38

You should rather have a smooth production curve and not thoses down pics every 15 min (approximatively)

@roumano
Copy link
Author

roumano commented Dec 17, 2024

These pics are known but it's hardcoded on the algorithm of all MPPT of victron
They make a "quick" scan of the all tension curve to find to better point for the rendement
The scan duration is around 20 seconds every 10minutes to be exact.

You can found some information about this here : https://communityarchive.victronenergy.com/questions/10361/change-mppt-tracking-refresh-interval.html

how these pics can be the issue as in the log of solar_optimizer, production look good ?

@jmcollin78
Copy link
Owner

how these pics can be the issue as in the log of solar_optimizer, production look good ?

Because this is seen as a drop in the production. I don't know if it is the root cause of your issue but it is not usual as far I know.

SO is smoothing the production to avoid shutting down all equipment when a cloud is passing in front of the sun.
You can check this smoothed production value with the entity named "production lissée" in French.

Capture d’écran 2024-12-18 à 22 11 08

This is the value taken into account by the algo. You should compare this value to the consumption.

@jmcollin78 jmcollin78 added invalid This doesn't seem right question Further information is requested labels Dec 18, 2024
@roumano
Copy link
Author

roumano commented Dec 18, 2024

Hi,
Please found the curve of the date of 2024-12-12 (where i provide logs in the previous comment ) :
Capture d’écran du 2024-12-18 23-34-40

I also look on other sensor and one look like strange : best_objective
Capture d’écran du 2024-12-18 23-35-56

Do you think it's can be the issue ?
If yes, in solar_optimizer i'm using these 3 sensor :

  • Energy sell price: tempo_price_exported, value 0.0 (i don't get any € to sell my energy)
  • Energy buy price: tempo_price_imported, value 0.19
  • Sell taxe percent: tempo_electrical_tax_exported, value 20.0

@jmcollin78
Copy link
Owner

  • Energy sell price: tempo_price_exported, value 0.0 (i don't get any € to sell my energy)

Ooooh, I think this is the issue! You should not put 0 even if you don't sell your production. I suggest you test with the same value as the imported one: 0.19

The algo won't work as expected if the export price is 0

@jmcollin78
Copy link
Owner

Let me know if this does fix the issue.

@jmcollin78 jmcollin78 added Not a SO issue The issue is not an SO issue and removed invalid This doesn't seem right labels Dec 19, 2024
@roumano
Copy link
Author

roumano commented Dec 19, 2024

Yes of course i will but i've a very bad weather (and maybe for few days) so not able to test asap.

Maybe details these values of these sensors in the Readme to avoid this issue for other ?

@jmcollin78 jmcollin78 added documentation Improvements or additions to documentation and removed question Further information is requested labels Dec 20, 2024
@jmcollin78
Copy link
Owner

Maybe details these values of these sensors in the Readme to avoid this issue for other ?

Yes ! I will wait for confirmation that this is the issue and I will add this.

@roumano
Copy link
Author

roumano commented Dec 20, 2024

i get a small lighten up right now and i confirm with a Energy sell price > 0 its now working as expected

Capture d’écran du 2024-12-20 12-33-34

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation Not a SO issue The issue is not an SO issue
Projects
None yet
Development

No branches or pull requests

2 participants