Repository navigation
feat(heat pump): add operating state, heat production and power limit getters - #836
Open
jeremiahpslewis wants to merge 2 commits into
Open
jeremiahpslewis wants to merge 2 commits into
jeremiahpslewis wants to merge 2 commits into
Conversation
… getters
Expose data points newer heat pumps (Vitocal 250-A, 252-A, 222-S, 200-A)
already report in the bulk feature fetch:
HeatPump:
- getHeatProductionCurrent / getPowerConsumptionCurrent (+ units) for the
device-level heating.heat.production.current and
heating.power.consumption.current
- getDefrostingActive (heating.outdoor.defrosting)
- getFourThreeWayValvePosition (heating.valves.fourThreeWay.position)
- getSecondaryCircuitOperationState (+ Target)
- getSecondaryCircuitFourThreeWayValvePosition (+ Target, Unit)
HeatingDevice (boilers and the Vitovalor report it too):
- getHeatProductionSummary{Heating,DomesticHotWater}{Unit,CurrentDay,
CurrentMonth,CurrentYear,LastMonth,LastSevenDays,LastYear}
Device:
- getPowerConsumptionLimit (+ Unit, Status) and
getPowerConsumptionLimitationSource for the §14a EnWG status report
Compressor:
- getSpeed returns a float, the Vitocal 252-A reports 38.5 rps
- add getSpeedUnit
- getMotorChamberTemperature, getAmbientTemperature and
getOverheatTemperature raise PyViCareNotSupportedFeatureError instead
of KeyError when the sensor reports notConnected without a value
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018X7DnQrHxgcWGosVT94sUL
jeremiahpslewis
marked this pull request as ready for review
October 4, 2026 09:45
Collaborator
|
Looks good to me, and the notConnected fix also helps Home Assistant, which reads getOverheatTemperature. I'd split the compressor changes (the three decorators and getSpeed returning a float) into their own fix PR, so the type change shows up in the release notes as a fix rather than inside a feature. |
Keep the new operating-state, heat-production, power-limit and speed-unit getters in this feature PR. Move fractional compressor speed and unsupported temperature handling, along with their regression tests, to the independent fix/compressor-speed-and-unsupported-temperatures branch.
This branch has not been deployed
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.
Expose operating state, heat production and power limitation data already returned by the bulk feature fetch.
Changes:
getSpeedUnit().Following the [review feedback](#836 (comment)), the fractional compressor speed fix and the three missing
@handleNotSupporteddecorators, together with their regression tests, have been split into a separate fix PR so they can appear under bug fixes in the release notes.Validation on Python 3.12:
ruff check .: passed.