Conversation
Atlantic's capability-restoration announcement in gduteil#129 documents the official semantics: 264 = tank bottom, 265 = middle, 266 = top, 267 = average water temperature. The integration had 264 mapped as condenser_temperature and 267 as tank_bottom_temperature. Live readings agree with Atlantic's numbering: on an ST CUBE, cap 264 reads cooler than 265 (63.96 vs 70.46 C on an idle hot tank), and drops sharply toward inlet temperature during a hot-water draw - bottom-vs- middle stratification, not a condenser. Entity unique_ids are keyed by capabilityId, so existing entities keep their entity_id and history; only display names change. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01635y2ipTY7KdjuMDvqbDtH
mmnlfrrr
pushed a commit
to mmnlfrrr/cozytouch
that referenced
this pull request
Sep 10, 2026
…teil#146 Upstream PR gduteil#165 documents the weekly program of thermostats as pairs of [minutes, temperature]. That settles the one element of 237-243 left open here: the leading 0 is the minute the slot starts, so [[0,58],[0,0],[0,0],[0,0]] reads "58 degrees from 00:00" with three unused slots, and the app only ever offering one setpoint per day explains why it has always been 0. The neighbouring time block is not the same shape: 245-251 hold start/end ranges, which the capture pins independently. Also records field data that contradicts PR gduteil#146, which would rename capability 267 to the tank average. On this appliance 267 reads 24.43 while 264, 265 and 266 read 27.24, 44.47 and 49.97, so it is colder than all three and cannot be their average. The current naming, 267 as the coldest point at the bottom of the tank and 264 as the heat pump condenser, fits the readings. That is a single appliance against Atlantic's own capability list, so it is written up as something to check on a second unit rather than as a verdict. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01ACWv1DVSmVzzfdVBRBarZF
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
condenser_temperature→tank_bottom_temperaturetank_bottom_temperature→tank_average_temperaturestrings.json/translations/en.json/translations/fr.jsonupdatedWhy
Atlantic's capability-restoration announcement in #129 (comment) documents the official semantics of these capabilities: 264 = bottom, 265 = middle, 266 = top, 267 = average water temperature. The integration's current mapping predates that list.
Live data agrees: on an ST CUBE WIFI WM 100L, cap 264 reads cooler than cap 265 (63.96 vs 70.46 °C on an idle hot tank) and drops sharply toward inlet temperature during a hot-water draw — bottom-vs-middle stratification, not condenser behavior.
Compatibility
Entity
unique_ids are built fromcapabilityId(sensor.py), so existing entities keep their entity_id and recorder history — only display names change.🤖 Generated with Claude Code
https://claude.ai/code/session_01635y2ipTY7KdjuMDvqbDtH