Skip to content

Charger (Stiebel Eltron): split WPMsystem and WPM 3/3i templates - #34493

Merged
andig merged 2 commits into
masterfrom
feat/stiebel-wpmsystem
Oct 7, 2026
Merged

andig merged 2 commits into
masterfrom
feat/stiebel-wpmsystem

Conversation

@andig

@andig andig commented Oct 6, 2026

Copy link
Copy Markdown
Member

refs #33966

Splits the Stiebel Eltron WPM template by controller generation, since only the WPMsystem (WPM 4) exposes inverter power via Modbus:

  • stiebel-wpmsystem (new): always reads power from register 3679 (same register and 0.1 kW scale the HA integration uses, WPMsystem only).
  • stiebel-wpm: now WPM 3/3i. No meter capability; the requirements note that without an extra meter, power is estimated from the charge current. The power param is deprecated but keeps working for existing configs.

The shared SG Ready mode handling moved to stiebel.tpl and is reused by stiebel-lwa. Rendered output of stiebel-lwa and stiebel-wpm is unchanged.

🤖 Generated with Claude Code

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@andig andig added devices Specific device support heating Heating labels Oct 6, 2026
@sourcery-ai

sourcery-ai Bot commented Oct 6, 2026

Copy link
Copy Markdown
Contributor

Sorry @andig, you've used your own review budget of 250,000 diff characters for the last 7 days.

You can request another review in 13 hours and 25 minutes by commenting @sourcery-ai review. Upgrade to get a review now.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@Optic00

Optic00 commented Oct 7, 2026

Copy link
Copy Markdown
Contributor

The split matches what I see on hardware. On a WPMsystem installation I have access to, 3679 (doc 3680) matched the ISG display at 0.1 kW per step. My WPM 3i rejects input 3643 to 3740 with exception 2 (illegal data address), so an existing power: true there fails the read instead of decoding to 0.

Three possible additions:

  • Discovery can't tell the two apart, but input 5001 can: 391 = WPM 3i and 449 = WPMsystem (both read on real units), 390 = WPM 3 family (firmware tables only, not measured). That would also answer the open question in Error in electrical energy measurement for Stiebel Eltron heat pump #33966.
  • Cascades: IWS 2 to 6 are on 3680 to 3684, the template reads only IWS 1. On a single unit the others read 0x8000.
  • I suspect 3679 covers the inverter only, without booster heater and circulation pumps, but I haven't measured that. If so, loadpoint energy would read low, which might be worth a note in the requirements.

@andig

andig commented Oct 7, 2026 •

Copy link
Copy Markdown
Member Author

Discovery can't tell the two apart, but input 5001 can

Nice, but templates can't do auto-detection :/

If so, loadpoint energy would read low, which might be worth a note in the requirements.

If so it should be removed entirely because it's wrong.

@github-actions github-actions Bot removed the waiting for feedback Suspended progress label Oct 7, 2026
@andig
andig merged commit a5a74ba into master Oct 7, 2026
@andig
andig deleted the feat/stiebel-wpmsystem branch October 7, 2026 18:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

devices Specific device support heating Heating

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants