Repository navigation
Charts fixed, Teslemetry covers the house between windows, PV10/PV90 plan tooltips
What's Changed
This release fixes the web charts that v9.7.0 left blank. It also stops a Powerwall leaving house load on the grid between windows, and stops a battery in Hold charging being frozen above its reserve. The plan table now shows the PV10 and PV90 outcomes in tooltips. There are also fixes for Intelligent Octopus dispatches that get withdrawn, Sunsynk battery size and Solis parallel pairs.
Fixes
-
Web charts render again. In v9.7.0 every chart on the /charts tabs, the dashboard History chart, the marginal-rates history and the tariff comparison charts came up blank, with a
TypeError: … is not a functionin the browser console. A missing semicolon in the chart script was the cause. @springfall2008 in #6022, fixes #6015 -
Teslemetry: the Powerwall covers the house between windows. With signal-tariff control (
teslemetry_tbc_control, on by default) the Powerwall stayed in Time-Based Control all day. Outside a window the tariff it is sent is one flat price, so Tesla had no reason to cover house load and could leave 0.1–0.6 kW on the grid after Predbat had released the reserve.- With no window in the tariff, the mode is now
self_consumption(Self-Powered in the Tesla app). It switches toautonomouswhen a charge window is committed or an export starts. - The periodic re-assert now re-sends the tariff as well as the reserve.
- Expect the Tesla app to move between Self-Powered and Time-Based Control during the day. An export may start slightly later, because the mode switch and the export band now land together.
@springfall2008 in #6021, fixes #6020
- With no window in the tariff, the mode is now
-
Hold charging no longer freezes a battery above its reserve. When the battery was already above a charge window's target, Predbat set the reserve just above the target so the battery could run the house down to it. On inverters with no target SoC it then also called the charge freeze service, which on FoxESS is Back-up mode and stops all discharge. A full battery sat at 100% while the house imported at peak rate. Predbat now stops the charge instead until the battery reaches the reserve, and freezes it from there as before. Inverters with a target SoC are not affected. @tico24 in #5998, fixes #5704
-
Intelligent Octopus: a withdrawn dispatch no longer keeps its cheap rate. With the Octopus Energy integration, the import rate sensor can keep its dispatch discount after Octopus withdraws the dispatch. Predbat then planned a battery charge at what was really peak rate. A discounted minute is now reset to the normal rate when a dispatch covered its half hour earlier and none covers it now.
- A discount no dispatch has ever covered is kept, so a rate sensor that runs ahead of the dispatch sensor is unaffected.
- Nothing is reset while a car is charging, because Octopus briefly reports an empty plan while it re-plans a running session.
- What Predbat has seen covered survives a restart.
@chalfontchubby in #5984, fixes #5663
-
Sunsynk (and any install without
soc_max): the battery size estimate can grow. A follow-up to #6007 in v9.7.0. On an upgraded install the size stayed at the old 7.2 kWh, although the BMS showed a full ~13.5 kWh charge overnight. The first estimate was being saved as if it were a configuredsoc_max, which then pinned every later estimate near it. An old nominal-only figure was also being read as a measurement. Both are fixed. A day whose calculation failed is now retried every hour, not at the next midnight. Withsoc_maxset, only the hourly retry changes. @springfall2008 in #6018 -
Predbat Hub gateway: an export can't go below your minimum when the cloud connection drops. The plan the gateway caches for running on its own could ask an export to stop at 0–4%. It is now held to the reserve and
best_soc_min, as it already is while connected. @springfall2008 in #5997 -
Predbat Hub as a display:
- Turning the screen off now releases the live display.
- A
gateway_display_enabledorgateway_live_displayvalue of0or1is read as off or on. Anything else unreadable falls back to the default with a warning, instead of stopping the Gateway component. - Status text is cut to fit the firmware's buffers without splitting a character such as
£. - Data dropped while disconnected is sent again.
- The oversized-packet warning is logged at most every 15 minutes.
-
No more "Unable to parse relative_time from PV forecast sensor: None" warning every cycle when no PV forecast source is set up. @chinghar in #6014, fixes #6013
-
Carbon: fewer short-forecast warnings. Predbat fetches the 48-hour carbon forecast every few hours, so a warning appeared on almost every cycle in between. It now warns once at fetch time if the API publishes less than 47 hours, and per cycle only once less than 24 hours of the plan is covered. @springfall2008 in #5965, fixes #5964
New features
-
Plan table: PV10 and PV90 outcomes in tooltips. Predbat scores each plan against the expected, pessimistic (PV10) and optimistic (PV90) forecasts, but the plan table only showed the expected one. When PV10 or PV90 drove a decision, the plan could look wrong with no way to see why. Hover over a cell to see each scenario's value:
- In the web UI plan view: the SoC, PV, Load, Cost and Total cells.
- In
predbat.plan_html(the dashboard card): the SoC cell only, to keep its size down. - A tooltip appears only where the value differs between scenarios. A scenario with weight 0 is left out.
- With PV90 weighted, the final plan gets one extra run, which adds about 0.2s to the plan.
@chalfontchubby in #5878, closes #5871
-
Solis: parallel master and slave inverters charge and export at the full planned rate. On a SolisCloud parallel pair only the master's slot current counts, and the two inverters share it, so the pair ran at half the planned rate. Two new optional apps.yaml settings, both off by default:
solis_parallel_slavesmaps each master's serial to its slave(s). The master's slot is written with the group's total planned current.solis_parallel_slot_current_maxcaps that total, in amps. Set it from your battery bank's rating. Without it, the master's own battery limit applies.- TOU V2 mode only. A master in V1 mode gets a one-time warning.
- Not yet run on hardware.
solis_parallel_slaves: "MASTER_SERIAL": "SLAVE_SERIAL" solis_parallel_slot_current_max: 270
@chalfontchubby in #5909, fixes #5556
-
Templates:
octopus_free_sessionadded to the Tesla Powerwall, Teslemetry, Sigenergy, Sofar Modbus and both Solar Assistant Growatt templates. Installs started from these got no 0p rate for Octopus Power Up events. If you copied one of them, add theoctopus_free_sessionline to your apps.yaml. @springfall2008 in #5931, fixes #5912
Documentation
- Car charging: Ohme with Intelligent Octopus. The Octopus Energy integration doesn't create the slot, ready-time or charge-limit entities for Ohme chargers. The docs now say so and point Ohme owners to the Ohme direct integration or Predbat-led charging. @springfall2008 in #5934, fixes #5933
- Solis FB00: names wills106's Solax Modbus integration as the one
GS_fb00is written and tested for. @chalfontchubby in #5908 - Debug journal updated with recent investigations. @springfall2008 in #6012
For developers
manual_all_timesis now worked out from the manual override lists, so replaying a debug dump with an override removed really plans without it. A dump whose saved copy disagrees with its lists now warns. @chalfontchubby in #5956- Triage bot: GitNexus index refreshes no longer leave files changed in the clone. @springfall2008 in #6019
Full Changelog: v9.7.0...v9.7.1