Solar charge delay¶
Delays morning battery charging (both from solar and from the grid) while the expected solar production is sufficient to cover the required energy. Avoids charging the battery early — whether from solar or the grid — when the sun will be able to do it later.
When it applies¶
- Morning charge after the battery has discharged overnight.
- Weekly 100% charge (waits for the sun to complete the charge before resorting to the grid).
Solar model¶
The integration uses a sinusoidal model based on the current day's solar forecast to estimate hour-by-hour solar production throughout the day. It compares the expected cumulative production from the current hour until sunset with the remaining energy needed.
If remaining_solar_production >= energy_to_charge:
Wait (the sun will charge it)
Else:
Start charging (solar or grid)
Live forecast¶
The integration reads the solar forecast sensor live, with no nightly capture or storage. Most solar forecast integrations (Solcast, Forecast.Solar, etc.) update their today sensor multiple times throughout the day, becoming progressively more accurate as actual weather conditions develop.
Every time the sensor value changes by more than 0.05 kWh, the integration re-evaluates the energy balance:
- Forecast degrades until
(usable_energy + forecast) < avg_daily_consumption→ the delay unlocks and charging starts immediately. - Forecast improves while the delay is still active → the system keeps waiting for the sun to charge the battery.
Once the delay is unlocked it stays unlocked for the rest of the day.
Cushion-only shortfall waits for the cheapest hour
The energy-balance unlock fires at net_solar < energy_needed × 1.3, where the 30 % is a safety cushion rather than the target itself. When only that cushion is missing (net_solar is still at or above the bare energy_needed) and predictive charging runs in a price-driven mode, the delay does not release on the spot: it holds for the cheapest remaining hour, bounded by the moment the unfactored balance is projected to break. Self-charging then lands in the midday price trough instead of the morning export peak, and the SOC target stays reachable. A genuine deficit (net_solar < energy_needed) still unlocks immediately, as does any day without usable price data.
Transient forecast gaps and manual re-evaluation
A configured forecast sensor that reads unavailable/unknown for a moment — while it refreshes, or during the window after a Home Assistant restart before all sensors have loaded — no longer disables the delay for the whole day. The delay is held through a short grace window (sensor state Waiting for forecast) and only unlocks if the sensor stays unavailable past it. If the delay did already unlock and you want it back the same day, toggle the Solar Charge Delay switch off and then on: that re-evaluates the delay from scratch instead of waiting for the midnight reset.
SOC setpoint¶
An optional SOC setpoint (12–90 %, disabled by default) splits charging into two phases:
- Below the setpoint — the battery charges freely (solar and grid), the delay is inactive. Sensor state:
Charging to setpoint. - At or above the setpoint — the solar delay logic activates and decides whether to keep charging or wait.
This is useful when the battery is deeply discharged and needs a guaranteed minimum charge before the solar decision is made. For example, with a setpoint of 50 % the battery charges to 50 % without restrictions; above 50 % the system evaluates whether remaining solar production is enough to complete the charge and waits if it is.
The setpoint is enabled with a dedicated checkbox in the configuration. When disabled, the delay applies from the very start of charging. The minimum value is 12 % — the minimum discharge SOC of the Venus batteries.
Dashboard configuration¶
| Field | Description | Default |
|---|---|---|
| Safety margin (h) | Hours before sunset by which charging must be complete. | 1 h |
| Solar forecast sensor | Used when a forecast sensor was not configured during the initial setup. | — |
| Enable minimum SOC before delay | When enabled, the battery charges to the configured SOC before the solar delay starts. | Disabled |
| Minimum SOC (%) | Battery SOC to reach before the solar delay takes effect. | — |
| Balance deadband (kWh) | Tolerance for the energy-balance check. If battery plus forecast is below expected consumption, the delay lasts longer. | 0.5 kWh |
A larger margin (for example, 180 minutes) unlocks grid charging earlier in the day; a smaller margin waits longer for the sun to cover the energy.

Requirements¶
- Solar forecast sensor configured in the initial setup step.
