Changelog
The authoritative, complete history is maintained in
docs/CHANGELOG.md
and the GitHub releases.
This page only summarizes recent milestones.
v0.17.0 — 2026-09-13
The stable cut of the 0.17.0 line, consolidating its whole beta cycle. The
headline: Navigator 1.0/1.7 heat pumps are supported — automatically
detected, served their own register map from the official 1.x table, with
writable PV-supplement registers on updated firmware. The rest is the
September code audit: eight bugs fixed (a poll outliving its config entry, a
failed setup leaving live entities behind, Fahrenheit room sensors written as
Celsius, sentinel readings on thermostat cards, and more), hardening of the
web supplement and the DHW boost, and the automation that keeps the
dependency pins current on its own. Runtime: idm-heatpump-api 2.1.1,
modbus-connection 4.11.1. The full, authoritative changelog is in
docs/CHANGELOG.md;
from this release on it is kept version-to-version (beta sections are folded
into the stable section at the cut).
v0.17.0-beta.1 — 2026-09-09
First candidate of the 0.17.0 line, carrying the result of the code audit in
docs/dev/code-audit-2026-09.md. Eight bugs are fixed — among them a poll that
outlived its config entry, a failed setup that left live entities behind, a
second heat pump behind one Modbus gateway that could no longer be added,
forwarded room temperatures that were not converted to degrees Celsius, and
sentinel readings that reached a temperature state — together with six
robustness items and three performance items. Both runtime pins move forward
(modbus-connection 4.11.1, idm-heatpump-api 2.0.1). No register map and
no entity identifier changed.
It is a beta: the audit touched model detection, setup and teardown,
write-enabled entities and services, and a runtime dependency change restarts
the soak clock. Verification progress is tracked in
docs/release-evidence/0.17.0-beta.1.md.
v0.16.1 — 2026-08-28
Patch on 0.16.0, from a live Home Assistant log. With the optional web
supplement pointed at an IP address, the integration closed a Home
Assistant aiohttp session instead of detaching it — Home Assistant wraps
close() on every session its helpers hand out, because the connector below it
is shared with every other integration. The session is now released with
detach(), and created with auto_cleanup=False so a web client rebuilt after
a failed poll does not leave the previous session pinned until Home Assistant
stops.
A hostname was never affected; it borrows the shared session, which the integration never released. Polling, entity state, writes, the KNX bridge and the Modbus path are unchanged, as are the runtime pins.
v0.16.0 — 2026-08-28
First stable release of the 0.16.0 line. It closes 0.16.0-beta.1 through
0.16.0-rc.6 with no code change since RC6.
The headline is the experimental KNX bridge. The integration serves the 654
IDM KNX communication objects itself — same object numbers, datapoint types and
read/write directions as IDM's ETS example project — so the Weinzierl
KNX IP BAOS 774 gateway module is no longer needed. It is opt-in, off by
default, and drives the Home Assistant knx integration, which is where
tunnelling, routing and KNX Secure stay. One base group address configures all
objects; idm_heatpump.export_knx_group_addresses and
scripts/generate_knx_group_addresses.py produce the ETS import. Physical-bus
interoperability is still unverified, which is why the feature is labelled
experimental.
Breaking: pymodbus is gone. The integration requires
idm-heatpump-api[web]==2.0.0 and speaks Modbus TCP through
modbus-connection==4.10.0 / tmodbus[async-serial]==0.6.1 only. 0.15.1 is
the last line with pymodbus. Nothing on the wire changes — register addresses,
entity IDs, unique IDs and the write path are identical, so entities, history,
automations and dashboards survive the update.
Also in the line: every entity name resolves through a Home Assistant
translation key, so an English installation finally shows English names;
heating circuits, optional modules and rooms became child devices on Home
Assistant 2026.9 without losing a device ID; strict mypy runs with nothing
disabled; and the test suite is gated at 95 % coverage with config_flow.py at
100 %.
See KNX Bridge.
v0.16.0-rc.6 — 2026-08-27
The KNX bridge now recovers when IDM starts before Home Assistant's KNX runtime has finished loading. Group-address event registration is retried every five seconds, and partial success is retained so only missing DPT batches are tried again. No manual IDM integration reload is required.
RC5's latest-value command queue and all write protections are unchanged. The EEPROM-sensitive classification and configurable 60-second default remain as before; registration recovery sends no bus telegram and writes no controller register by itself.
v0.16.0-rc.5 — 2026-08-27
Incoming commands for the experimental KNX bridge now use a latest-value-wins queue. Rapid intermediate setpoints are coalesced for one second, and a valid command that encounters the general cooldown or EEPROM protection remains queued until the guard expires instead of being lost. The EEPROM-sensitive register classification and the configurable 60-second default are unchanged.
The options text now distinguishes the live evidence precisely: setup and reload were verified with an active Home Assistant KNX interface in safe receive-only mode, while physical group-address telegram interoperability and bus load remain open because no IDM group addresses were imported into ETS.
See KNX Bridge.
v0.16.0-rc.4 — 2026-08-27
Entity names are translated. Until now only a handful of control entities had translations; every other entity — the Modbus registers, the calculated and operating-analysis sensors, the technician codes and the local web supplement values — carried a hardcoded German name in every language. All of them now resolve through a Home Assistant translation key, so an English installation shows English names and a German one shows the names it always had. Entity IDs and unique IDs are unchanged.
The rest of the candidate is quality-scale work with no user-visible effect: the config flow reached 100 % test coverage and the suite 95 %, both enforced in CI; the optional web clients use Home Assistant's own aiohttp session; and strict typing lost its seven disabled error codes.
See Entities.
v0.16.0-rc.3 — 2026-08-27
Optional, experimental KNX bridge: the integration can serve the IDM KNX communication
objects — same object numbers, datapoint types and read/write directions as
IDM's ETS example project — through the Home Assistant knx integration, so
the Weinzierl KNX IP BAOS 774 gateway module is no longer needed. KNX Secure,
tunnelling and routing come from the knx integration. One base group address
configures all 654 objects, and idm_heatpump.export_knx_group_addresses
returns the table for ETS.
Experimental: unit-tested, but never yet exercised against a real KNX bus.
See KNX Bridge.
v0.15.0 — 2026-08-22
Stable release closing the 0.15.0-beta.1..beta.3 cycle. No breaking changes:
unique IDs, entity IDs, register addresses and write paths are unchanged, and an
existing config entry keeps polling exactly as before.
Changed
- Transport off the alpha pin:
modbus-connection==4.8.1andtmodbus[async-serial]==0.5.1(previously4.0.0a3/0.5.0), with a typed error hierarchy andModbusDesyncErrorfor gateways serving several clients.
Added
- Web room temperature sensors for all heating circuits A–G:
B61–B67(room_temperature_HK_A..G), verified live on Navigator 10 ALM 6-15. - Connection pacing options under "Advanced Modbus settings": pause between
requests (0–0.5 s) and pause after connect (0–5 s), both
0by default. - Automated dependency pin freshness checking and an English documentation contract, both enforced in CI.
Fixed
- Inverted NC digital inputs in the web supplement:
ew_evu_lock_contact,dewpoint_humidity_alarmandfailure_eheatingnow reportoffin normal operation andonon alarm, lock or fault. - Orphaned deprecated sensor entities: stale
sensor.*_webentries left over from thebinary_sensormigration are cleaned from the entity registry at startup.
Release gate note: this stable tag was cut without the seven-day soak and without a signed stable-candidate smoke test — a deliberate maintainer decision, recorded in
docs/release-evidence/0.15.0.mdand on Stability and Release Readiness.
v0.15.0-beta.3 — 2026-08-22
Beta candidate 3: adds room temperature sensors for all heating circuits (A–G)
in the optional Navigator web supplement, bumps idm-heatpump-api to 1.0.2.
Added
- Web room temperature sensors for all heating circuits A–G: Support for
B61–B67(room_temperature_HK_A..G), verified live on Navigator 10 ALM 6-15 (B64 = 21.8 °C). idm-heatpump-api[web]: Bumped to1.0.2.
v0.15.0-beta.2 — 2026-08-22
Beta candidate 2: fixes inverted state on normally closed (NC) digital inputs in the Navigator web supplement, automatically cleans up orphaned legacy sensor entities in Home Assistant's entity registry, and adds automated dependency pin freshness checking.
Fixed
- Inverted NC digital inputs in Web supplement:
ew_evu_lock_contact,dewpoint_humidity_alarm, andfailure_eheatingare Normally Closed contacts and now correctly reportoffin normal operation andonon alarm/lock. - Orphaned deprecated sensor entities cleanup: Stale
sensor.*_webentities migrated tobinary_sensorare automatically cleaned from Home Assistant's entity registry at startup. - Dependency pin updater platform support: Normalized paths to POSIX format.
Added
- English documentation contract: Enforced by tests.
- Automated dependency freshness checking: Daily PyPI pin verification.
v0.15.0-beta.1 — 2026-08-19
Beta candidate: the transport pin moves off the modbus-connection==4.0.0a3
alpha onto 4.8.1, plus two new pacing options that are off by default. Because
this changes the runtime dependency of the direct Modbus socket, it ships
through the pre-release channel — the soak clock for a stable tag restarts with
this candidate. No breaking changes; unique IDs, entity IDs, register addresses
and write paths are unchanged, and an existing config entry polls exactly as
before without any action.
Changed
- Transport pinned to
modbus-connection==4.8.1andtmodbus[async-serial]==0.5.1(previously4.0.0a3/0.5.0). The newer library adds a typed error hierarchy, connection-wide pacing, and — since 4.8.0 —ModbusDesyncError: when a peer answers a different request than the one sent (typical for a gateway serving several Modbus clients at once), the backend drops the link instead of decoding the foreign reply. Theasync-serialextra is not optional even though this integration is TCP-only: sincemodbus-connection4.7.0 the backend module importsserialxat module level. - Transport error translation now uses the typed exceptions instead of
comparing
exception_codenumbers. The contract is unchanged: code 2 staysIllegalAddressError(coordinator bisect), codes 5/6/10/11 stay on the retry-in-place path, and theexception_code=<N>marker the coordinator matches on is still rendered as a number.
Added
- Two options under "Advanced Modbus settings", both
0by default: pause between requests (0–0.5 s, minimum gap from the end of one request to the start of the next) and pause after connect (0–5 s, once per connect and reconnect). Raise them for controllers or gateways that answer "device busy", drop requests, or time out under a dense request stream. The guided setup profiles set the request pause along: "unreliable network" 0.05 s, "multiple clients" 0.1 s.
v0.14.1 — 2026-08-18
Patch release: three bugs around the lifecycle of optional heating circuits. No breaking changes; unique IDs, register addresses and write paths are unchanged.
Fixed
- Sensors of a circuit enabled later never appeared. Entities are only built
while the config entry loads. If the controller still reported the
-1.0sentinel in that one poll, the "hide unused sensors" filter dropped the circuit's read-only registers — so the circuit got its controls but neither flow, room nor setpoint temperature, until some later reload happened to catch better values. A configured circuit is now exempt from that filter, the same way writable controls already were. Availability still follows the live value. - Flow deviation showed the flow temperature while idle. A circuit that asks
for nothing reports setpoint
0.0. That is a normal operating state, not a declared sentinel, so the sensor computedflow - 0and published the measured flow temperature as a 26 K deviation. It is now suppressed (stateunknown) while the circuit requests nothing, like the COP sensor at standstill. - "Unnamed device" in the device list. Sub-devices are created before the
platforms so
via_devicelinks resolve regardless of platform order; their name only arrives with the first entity. A sub-device that never received one stayed in the list as an unnamed, empty entry. Those are now detached when the config entry loads. A sub-device whose entities the user merely disabled is kept. - Orphaned entities of deselected circuits. Unchecking a circuit left its entities in the registry as permanently unavailable. They are now removed when the config entry loads, narrowly scoped to register-backed entities of this entry whose register points at an unconfigured circuit. Re-enabling the circuit recreates them under unchanged unique IDs.
v0.14.0 — 2026-08-18
Minor release: one usability fix on the heating curve, the circuit design parameters become expert entities, plus a per-circuit dashboard example and a contract test that catches the root cause of the 0.13.0 bug in CI. Config entries, entity IDs, unique IDs, register addresses and write paths are unchanged, and the tested dependency pairing is identical to 0.13.0.
Fixed
- Heating curve step size.
hc_{a..g}_heating_curveis a FLOAT register and therefore inherited the default step of 0.5, even though its range is 0.1–3.5. Common settings such as 0.3 or 0.4 fell between two steps and could not be entered. The step is now 0.1; the range still comes fromidm-heatpump-api.
Changed
- Heating-curve parameters are expert entities.
hc_{x}_heating_curve,hc_{x}_parallel_shift,hc_{x}_setpoint_flow_constantandhc_{x}_setpoint_flow_coolingare created disabled on new installations, likepower_limit_hpalready was. They define the design of the whole heating system and write to EEPROM registers. Existing installations are unaffected —entity_registry_enabled_defaultonly applies when an entity is first created.
Added
- Per-circuit dashboard example
(
docs/examples/dashboard-idm-heating-circuit.yaml). Home Assistant sorts a device page alphabetically and mixes comfort setpoints with design parameters; the example keeps them in separate sections and adds a history graph of measured flow, requested flow, room and outdoor temperature. - Contract test for the web value keys (
tests/test_cross_repo_contract.py). It compares the value namesidm-heatpump-apican deliver against the keys the integration turns into entities and fails as soon as the API provides a value the integration would silently discard — the root cause of the circuit B–G bug in 0.13.0.
v0.13.0 — 2026-08-18
Minor release with one fix that makes new entities appear on systems with more than one heating circuit, plus German names for the optional circuits. Fully backward compatible: config entries, entity IDs, unique IDs, register addresses and write paths are unchanged, and the tested dependency pairing is identical to 0.12.0.
Fixed
- Web entities for every heating circuit, not just circuit A. The Navigator
web values for the circuit pump (
M31–M37), mixer (M41–M47) and flow temperature (B51–B57) are provided byidm-heatpump-apifor circuits A–G, but the integration only picked up the circuit-A keys from a static allowlist. A circuit enabled later through the options flow therefore never received its(Web)entities — the values arrived and were discarded. Web entities are now created per configured heating circuit, so they appear on the reload that follows a later activation. - German names for heating circuits B–G. The name table only contained
hc_a_*entries, so every optional circuit fell back to the English default (Hc D Cooling Limitinstead ofKühlgrenze HK D). Names for B–G are now derived from the circuit-A table. Entity IDs and unique IDs are unchanged; only the displayed name differs.
v0.12.0 — 2026-08-17
Minor release with two new features and one polling fix. Fully backward compatible: config entries, entity IDs, unique IDs, register addresses and write paths are unchanged, and the tested dependency pairing is identical to 0.11.1.
Added
- Flow deviation per heating circuit (
calculated_hc_{a..g}_flow_deviation): the measured flow temperature of a circuit minus the flow setpoint the controller requests for that same circuit. Positive means overshoot, negative means the circuit does not reach its setpoint — the key figure when tuning a heating curve. Nothing is estimated; both operands are decoded registers of one circuit. Idle (0.0) and unconfigured (-1.0) circuits reportunavailableinstead of a meaningless deviation. With device hierarchy enabled the sensor sits on its heating-circuit device. - Self-diagnosis for a scan interval that is too short: when polling takes at least 80% of its own interval for several cycles in a row, a repair issue explains the situation and names the three effective remedies. This saturation is what turns into timeouts, especially when a second Modbus client shares the controller.
Fixed
- Calculated sensors could lose their source registers under entity-aware
polling —
calculated_copwas missing from the hand-maintained dependency list, so disabling the two power sensors made the COP sensor permanently unavailable. Dependencies are now derived from the sensor definitions.
See docs/CHANGELOG.md
for the full entry including test and CI changes.
v0.11.1 — 2026-08-15
Patch release fixing #192: a runtime model correction from the web supplement (e.g. Navigator 2.0 → Navigator 10 based on a NAV10 firmware-string match) updated the coordinator's live state, but Home Assistant's Device Registry — populated once at entity-setup time — never received the correction, since that detection key is deliberately excluded from the reload fingerprint to avoid tearing down active connections. The device page kept showing the original model while diagnostics already showed the corrected one. The coordinator now pushes a changed model/firmware/serial number directly into the Device Registry whenever a correction actually changes one of them.
v0.11.0 — 2026-08-15
First stable release of the 0.11.x line, after eight betas
(0.11.0-beta.1 – 0.11.0-beta.8). Fully backward compatible: existing
config entries, entity IDs, register addresses and write paths are
unchanged. See docs/CHANGELOG.md
for the full consolidated changelog.
Added
- Direct Modbus TCP socket now runs through
modbus-connection==4.0.0a3with thetmodbus==0.5.0backend, replacing the previous direct-Pymodbus path. - External humidity forwarding and external storage-temperature forwarding (GLT), alongside the existing per-heating-circuit room-temperature forwarding.
- Transport diagnostics (
modbus-connection/tmodbusversions, socket ownership, connection status).
Changed
idm-heatpump-api[web]pinned0.9.1→1.0.1(the stable API 1.x line introduces the public transport-injection contract this integration's tmodbus path relies on).- Minimum Home Assistant version raised to
2026.8.1;via_device→via_device_iddevice-registry migration.
Fixed
- Eight confirmed bugs found in a full codebase audit (climate preset-mode
safety, a
write_registerKeyError, a diagnostics IP-leak, a register- cache collision, a write-filter gap, reconfigure input loss, a stale device-info cache, and a zone-room validation counter reset), plus repair-issue IDs now scoped per config entry and narrower exception handling in the polling coordinator.
Known limitation
- A Navigator 2.0/Terra SWM model-detection follow-up (#192) remains open and is being investigated post-release.
v0.11.0-beta.3 - 2026-08-05
- Continues the direct
modbus-connection==4.0.0a3/tmodbus==0.5.0socket with the stableidm-heatpump-api[web]==1.0.0. - Transient Modbus exception codes 5 (Acknowledge), 6 (Server Device Busy), 10
(Gateway Path Unavailable) and 11 (Gateway Target Failed to Respond) are now
translated to
ModbusException, so the API retry loop repeats them in place on the same connection instead of forcing a hard reconnect — matching the API 1.0 transport contract (retry-in-place path). Code 2 remainsIllegalAddressErrorfor the coordinator bisect logic. - Removed the dead
_NON_RETRYABLE_DEVICE_EXCEPTION_CODESset and corrected comments that misdescribed the API retry behavior.
v0.11.0-beta.1 — 2026-08-04
- This is the first IDM integration beta whose direct Modbus TCP socket runs
through
modbus-connection==4.0.0a3with the separately pinnedtmodbus==0.5.0backend.4.0.0a3is the transport library version; the IDM integration version is0.11.0-beta.1(latest stable:0.10.1). idm-heatpump-api[web]==0.9.1continues to own the register model, batching, encoding/decoding, model detection and write safety. Itspymodbus>=3.12.1,<4.0dependency remains temporarily pinned because API 0.9.1 still imports it, but pymodbus no longer owns the direct socket.- Diagnostics and the API-version sensor now include
modbus-connectionandtmodbusversions plus redacted transport capabilities. - The adapter is implemented and covered by automated tests. Each config entry
still owns its socket and reports
supports_shared_connection: falsebecause Home Assistant central cross-entry sharing is not available; read-only validation of the new path on real Navigator hardware remains pending. - Transient Modbus responses 5 (Acknowledge), 6 (Server Device Busy), 10 (Gateway Path Unavailable), and 11 (Gateway Target Failed to Respond) escape the batch layer without individual-read fallback or permanent register quarantine. Backend-owned busy retries are not duplicated by the adapter.
- This beta does not satisfy the stable hardware-smoke and soak gates yet.
v0.8.5 — 2026-07-23
First stable release of the 0.8.5 line. Consolidates the eight beta candidates plus the final i18n and stability fixes from the stable code review.
Added
- Manual Navigator model override (Auto / Navigator 10 / Navigator 2.0 / Navigator Pro), wenn die automatische Erkennung mehrdeutig ist.
- Restart-sicherer Warmwasser-Boost mit den Services
idm_heatpump.start_dhw_boostundidm_heatpump.cancel_dhw_boostsowie Start-/Cancel-Buttons. Der Boost-Zustand überlebt HA-Neustarts. - Optionale Gerät-Hierarchie (Wärmepumpe, DHW-Controller, Zonenmodule als separate Sub-Geräte).
- Entity-bewusstes Modbus-Polling, Momentan-COP-Sensor und Betriebszyklus-Analyse (Verdichter-/Abtau-Zähler).
- Navigator-Web-Binary-Sensoren für Online-/Regler-Online-Status.
Changed
- API-Pin aktualisiert:
idm-heatpump-api[web]==0.8.4(war 0.8.1). Bringt sentinel-aware Heizkreis-Modus-Probes, robusteren Navigator-10-vs-2.0-Differenzierer für Terra SWM, automatische Kaskadenerkennung und Navigator-10-Heizkreisdaten für die Kreise B–G. - Klima- und Warmwasser-Entitäten melden ihre unterstützte Schrittweite (0,5 °C bzw. 1 °C für integer-backed Register).
- Modbus-Register-Wiki gegen API 0.8.4 regeneriert.
- Repository aufgeräumt (
.planning/, alteROADMAP.md, verwaiste Skripte und AI-Handoff-Doku entfernt). - README und HA-Core-Entwurf listen jetzt alle 8 Plattformen und das vollständige Service-Set inkl. DHW-Boost.
Fixed
- Integer-Modbus-Numbers bieten keine invaliden Nachkommastellen mehr an (#158).
- Terra SWM / Navigator 2.0 wurde fälschlich als Navigator 10 erkannt (Issue #44); die Erkennung verlangt jetzt plausible Power-Limit-Werte.
- Water-Heater-Entität ignoriert jetzt den Unused-Sentinel und zeigt nicht
mehr
-1 °Cals Live-Temperatur an. - DHW-Boost nutzt Übersetzungsschlüssel statt harter deutscher Strings;
die Multi-Device-Service-ValidationError verwendet den bestehenden Schlüssel
multiple_entries_select_entry. - DHW-Boost:
DhwBoostErrorwird im Timeout-/Target-Restore-Pfad sauber abgefangen statt als unhandled Task-Exception durchzuschlagen.
Known limitation
- Home Assistants experimentelle
modbus_connectionwird noch nicht verwendet. Der vorbereitete Transport-Vertrag bleibt bewusst inaktiv, bis die offizielle HA-Schnittstelle final ist.
v0.8.5-beta.8 — 2026-07-23
Changed
- Neue Beta-Kandidatenversion
0.8.5-beta.8: Aktualisiert Manifest, Release-Evidence, Changelog und Wiki-Verweise auf den aktuellen Beta-Stand. Laufzeitcode, Entitäten, Register, Schreibpfade und der getesteteidm-heatpump-api[web]==0.8.4-Pin bleiben unverändert.
v0.8.5-beta.7 — 2026-07-22
Fixed
- Endgültiges Navigator-Modell wird mit der API synchronisiert: Manuelle Modell-Overrides und eindeutige spätere Web-Korrekturen gelten nun auch für die modellabhängigen Register- und Schreibprüfungen der API.
- Zukünftiger Modbus-Transportvertrag korrigiert: Der weiterhin inaktive Vertrag unterscheidet FC04/Input Register und FC03/Holding Register und begrenzt Slave-IDs auf 1–247. Der produktive Transport bleibt unverändert.
v0.8.5-beta.6 — 2026-07-22
Fixed
- Ganzzahlige Modbus-Werte verwenden jetzt Schrittweite 1: Heiz- und Kühlgrenzen der Heizkreise A–G sowie alle weiteren schreibbaren Integer- Register bieten keine ungültigen 0,5-Schritte mehr an.
- Climate und Warmwasser melden die unterstützte Zielwert-Schrittweite: Heizkreis- und Raum-Sollwerte verwenden 0,5 °C, der ganzzahlige Warmwasser- Sollwert 1 °C.
v0.8.5-beta.5 — 2026-07-22
Changed
- Pin auf
idm-heatpump-api[web]==0.8.4: Aktualisiert die API-Bibliothek auf v0.8.4 für verbesserte Modbus-Modellerkennung (Erkennung aktiver Heizkreise über Betriebsmodus-Register, verlässliche Abfrage für Navigator 10 vs. 2.0 bei Terra SWM Firmware und Kaskaden-Erkennung).
v0.8.4 — 2026-07-19
Changed
- Zonenmodul-Raumrelais ist jetzt ein
binary_sensor: Der Relaisstatus pro Raum (zm{z}_room{r}_relay) wurde bisher als numerischer Sensor mit0/1angezeigt. Er läuft jetzt auf derbinary_sensor-Plattform und zeigton/off(Device ClassRunning, Toggle-Icon). Erfordert das mitgelieferteidm-heatpump-api[web]==0.8.1, in dem das Relay-Register alsbinary=Truemarkiert ist. Schließt #128. - Pin auf
idm-heatpump-api[web]==0.8.1.
v0.8.3 — 2026-07-16
Changed
- Pin auf
idm-heatpump-api[web]==0.8.0: Wirkt zwei Verbesserungen der Bibliothek automatisch aus (keine Code-Änderung an der Integration):detect_modelerkennt nicht-kontinuierliche Heizkreise (z. B. nur HK A und HK D installiert) zusätzlich über die Active-Mode-Register 1498–1504.- Der Navigator-10-Web-Client liefert Vorlauf, Pumpe und Mischer der Heizkreise B–G (vorher nur HK A und HK C).
- Enthält den IPv4/IPv6-Web-Anmeldungsfix für den Navigator 2.0 aus API 0.7.7.
v0.8.2 — 2026-07-12
⚠️ Wichtige Hinweise zum Update (Breaking Changes)
Das direkte Update von v0.8.1 auf v0.8.2 enthält keine zusätzlichen Breaking
Changes. Bei einem Update von v0.7.4 oder älter gelten weiterhin die
v0.8-Änderungen: lokaler Webzugriff mit PIN, die fest gepinnte API 0.7.6, neue
climate- und water_heater-Plattformen, die entfernte Entität
ext_demand_brine_pump_m16, fehlertolerantes Polling und IP-unabhängige Unique
IDs. Die vollständigen Hinweise stehen im Changelog.
Korrekturen
- Benennt native Regler eindeutig als Heizkreis A, Zone 1 Raum 1 und Warmwasser, statt den Gerätenamen für mehrere Entitäten anzuzeigen.
- Zeigt für Warmwasser den passenden Modus Wärmepumpe statt des irreführenden Status Hochleistung.
- Vervollständigt die kanonischen Entity-Texte und sichert das Naming mit Tests ab.
v0.8.1-beta.29 — 2026-07-11
- Remembers the successful Navigator 2.0 or Navigator 10/Pro local web protocol and retries only that protocol during normal runtime recovery.
- Tries both supported web protocols during setup, reconfiguration and repair,
and treats local network code
0as disabled. - Redacts web host, web PIN and detailed web connection strings from downloaded diagnostics.
- Adds GLT Monitor diagnosis, writable-control guidance, exact PV/battery datatypes and guarded examples for PV surplus and external DHW requests.
- Keeps
idm-heatpump-api[web]==0.7.6; this release needs a new integration version, not a new API package. - Consolidates verified constraints and remaining verification work in the project knowledge base and Wiki.
v0.8.1-beta.28 — 2026-07-11
- Pins the published
idm-heatpump-api0.7.6 stability release. - Propagates transport failures without disabling valid registers.
- Quarantines proven room-mode batch mismatches and avoids later double reads.
- Recognizes the verified cascade-unavailable sentinel.
- Restores explicitly acknowledged custom-register writes with numeric validation.
Unreleased stability audit — 2026-07-10
- Transport/no-response failures no longer count as permanent failures of individual registers.
- Zone-room mode validation isolates unsupported/invalid values and avoids repeated double reads after quarantine.
- Navigator 10 cascade capability recognizes the hardware-confirmed
255unavailable sentinel. - Advanced raw writes retain numeric/datatype validation and require explicit risk acknowledgement.
- Added measurable stable-release gates.
v0.8.1-beta.27 — 2026-07-10
- Pinned the hardware-verified API 0.7.5.
- Added register-specific unavailable-sentinel handling.
- Compared 170 definitions across 45 groups in 309 read-only batch/individual checks without a raw mismatch.
Historical summary
v0.4.6 — 2026-05-31
- 169+ entities (109 sensors, 8 binary, 44 numbers, 4 selects, 4 switches)
- Full
idm-heatpumplibrary integration (Option B complete) - Binary sensors for compressors, fault alarms, heating/cooling/DHW demand
- Solar, ISC, PV, cascade registers all included
- German entity names throughout
- Write-only register protection (
error_acknowledge)
v0.4.4 — 2026-05-31
- Full migration to
idm-heatpumplibrary as core - Navigator 10 support: heat sink sensors, flow rate, groundwater temps
- Booster A/B diagnostics (16 new sensors)
v0.4.0 — 2026-05-30
- Major architectural change
- Navigator 10 support added
- First large library-backed dynamic register map
v0.2.0 — 2026-03-22
- Initial release
- Basic Modbus TCP integration
- System sensors, heating circuits, DHW control