Repository navigation
docs(ohme): energy sensor removed in HA 2026.8.0, recommend a Riemann sum helper - #4465
Merged
Merged
Conversation
… sum helper Home Assistant 2026.8.0 removed the Ohme integration's energy sensor entirely (home-assistant/core#174664) - it was estimating car battery level rather than charger energy delivered, so there's no direct replacement. Point users at deriving it from the still-present power sensor via a Riemann sum integral helper instead, per the upstream PR's own migration guidance. Fixes #4458 Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
3 tasks done
springfall2008
pushed a commit
that referenced
this pull request
Aug 11, 2026
…s no data (#4469) * fix(fetch): warn loudly when car_charging_energy is configured but has no data Follow-up to #4465/#4458. car_charging_hold defaults on, and its precise per-minute subtraction path silently falls back to the load-threshold heuristic whenever car_charging_energy resolves empty - previously only a benign, error-free "Unable to fetch history" log line, easy to miss. This happens for any Ohme HA-in-built-integration user still pointed at the energy sensor HA 2026.8.0 removed, degrading load-forecast accuracy on every car-charging day rather than a single wrong display value. Add a distinct, error-flagged warning in load_car_energy() specifically for "configured but empty" (not "not configured at all", which already logs its own message and is a normal, expected setup). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> * fix(fetch): throttle the empty-car_charging_energy warning to once per incident Trefor flagged that as written, this warns on every single update cycle for as long as the condition persists - and it's not only caused by a genuinely broken/removed entity (#4458); a recorder-excluded entity or a fresh install with no history yet hits the same empty result and can be a permanent, intentional state for some setups, not a one-off to fix. Gate the loud self.log() call on a new car_charging_energy_warned flag, reset whenever data loads successfully, so it fires once per incident rather than every 5 minutes forever. record_status(had_errors=True) still fires every cycle the condition persists, so the status sensor keeps accurately reflecting the degraded state - only the log spam is suppressed. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
energysensor entirely (home-assistant/core#174664) - it was estimating car battery level rather than energy delivered by the charger, so there's no direct replacement sensor.homeassistant/components/ohme/sensor.py):energyis gone,poweris still present.car_charging_energyfromsensor.ohme_{ohme_name}_powervia a Riemann sum integral helper, matching the upstream PR's own stated migration guidance.Fixes #4458
Test plan
./run_pre_commitpasses (markdownlint, cspell)🤖 Generated with Claude Code