Skip to content

docs(inverter-setup): rewrite Victron section and add templates/victron.yaml - #5332

Merged
springfall2008 merged 4 commits into
springfall2008:mainfrom
jeangroen:docs/victron-routes
Oct 9, 2026
Merged

springfall2008 merged 4 commits into
springfall2008:mainfrom
jeangroen:docs/victron-routes

Conversation

@jeangroen

Copy link
Copy Markdown
Contributor

Refs #2846, #798. Corrects part of #4345 (see below).

Why

  • docs/inverter-setup.md links to templates/victron.yaml in the inverter table, but the file does not exist, so the link returns a 404.
  • The current Victron section says Control charge gains nothing over Control SOC only and that a charge schedule must be left enabled on the Cerbo. The reporter in Plan never includes grid charging - ignores best_soc_keep #4337 later confirmed that Control charge & discharge was the fix, and in an ESS set-up no Cerbo schedule is needed: the ESS minimum SoC itself acts as the charge target.
  • Three working Victron routes have been described in Victron Support #2846 over the past months. None of them are in the docs yet.

What

templates/victron.yaml (new): an apps.yaml for the "target SoC" route. It uses the SK profile as base type, with the freeze capability override, helpers instead of Cerbo entities for charge_limit / timed_charge_current, battery_min_soc, literal watt limits, and comments explaining each choice. The entity names follow the core Home Assistant Victron GX integration.

docs/inverter-setup.md, Victron section (rewritten):

  • A short comparison of the three routes, and what they share for freeze export (block charging, leave everything else open).
  • Prerequisites for all routes: ESS mode Optimised (without BatteryLife) and the Active SoC limit trap, Dynamic ESS off, the Predbat mode, the load sensor when the MultiPlus is not on L1, and the need for a safe fallback because Cerbo settings persist.
  • Route A (target SoC) in full: helpers, a "Predbat state" template sensor, two automations (target SoC to ESS minimum SoC, freeze to max charge current) with a safe state when Predbat is not running, Predbat settings, and known limitations (Freeze export at 100% SoC never calls discharge_freeze_service #5302, reset_inverter() writes a 100% target on target-SoC-only inverters #5303, read-only).
  • Route B (grid setpoint and ESS limits, by @Lanmate) and route C (Node-RED following predbat.status, by @WesSec), summarised from Victron Support #2846 with credit.
  • In the inverter table, the integration link now points to the core Victron GX integration (built on the same victron-mqtt library as the HACS integration it replaces in the table).

No code changes.

Testing

Route A has been running on my system since 13 September 2026 and on Predbat v9.3.3 since 1 October 2026: MultiPlus-II 48/5000/70-50, Cerbo GX on Venus OS v3.79, a 16 kWh LFP battery with a CAN BMS (DVCC), AC-coupled PV, single phase. Freeze export was verified end to end on v9.3.3 (timings are in the docs). Routes B and C are described as their authors reported them; I have not run them myself.

Checked locally: markdownlint (repository config) and cspell (en-GB) on both files, and templates/victron.yaml parses as YAML.

@Lanmate @WesSec: please check that your routes are summarised correctly.
@gcoan @chalfontchubby: happy to adjust structure or wording to fit the docs.

Written with help from Claude (AI). I reviewed the content and it reflects my own set-up and testing.

Comment thread docs/inverter-setup.md Outdated
@WesSec

WesSec commented Oct 1, 2026

Copy link
Copy Markdown

Hi, many thanks for the efforts on this! I think it's a very great starting point for ones with a victron inverter and unsure what route to pick, great that there are options.

I'm not a git expert so i added a comment, i would refer to manual api settings (in case something in there changes) instead of mentioning the specific variable name.

@Lanmate

Lanmate commented Oct 5, 2026

Copy link
Copy Markdown

Thanks for the effort in putting the docs together, the route I described is summarised correctly.

@jeangroen jeangroen mentioned this pull request Oct 6, 2026
@springfall2008
springfall2008 merged commit d7d8c60 into springfall2008:main Oct 9, 2026
2 checks passed
@jeangroen
jeangroen deleted the docs/victron-routes branch October 10, 2026 11:01
springfall2008 added a commit that referenced this pull request Oct 11, 2026
…s); mark GH#5050 and the GH#5221 event-day instance fixed in PR #5163, GH#5461 fixed in PR #5462, and the Victron template gap fixed in PR #5332 (#5481)

Co-authored-by: CI <ci@example.com>
Co-authored-by: Claude Code <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants