Skip to content

v1.5.0 — Thermostat-valve entities, appliance status, fast/slow polling

Latest

Choose a tag to compare

@CaseyRo CaseyRo released this 29 Aug 11:39
· 8 commits to master since this release

First stable release of the 1.5.0 line. Everything here was pre-released as v1.5.0-beta.1 through v1.5.0-beta.3, which also supersede v1.4.0-beta.1 — 1.4.0 never went stable, so its contents ship here.

@jfhautenauven built essentially all of it (#18, #20, #23, #24, #25), ran it in his own 12-valve production install throughout, confirmed the child-lock write end-to-end on real hardware, and reported beta.3 clean in normal use. Thank you — again. 🙏

Added

  • Thermostat-valve entities — per-valve child lock, valve position, actual temperature and a writable calibration offset, on top of the telemetry 1.3.0 already exposed.
  • Per-zone average temperature sensor — the zone-level aggregate the climate entity reports as its current temperature, now available on its own.
  • Appliance status sensordisplayCode + causeCode resolved against a Bosch/Buderus table to a readable state, raw codes kept on the attributes. Locking and blocking faults take precedence.
  • Per-zone assigned-program selects — the zone's clockProgram is now writable.
  • Heat demand type, optimum start state, zigbee firmware, electricity annual goal, return temperature — created only when your appliance advertises them.

Changed

  • Fast/slow polling — temperatures, modes and live valve telemetry stay on the 60-second cycle; /gateway, /energy, /solarCircuits, /programs, /system/appliance and the /devices inventory drop to every 5 minutes, energy history to 30, discovery to daily. Noticeably less API load.
  • bosch.update_thermostat is now bosch.refresh_gateway. The old name still works as a deprecated alias — switch your automations over when convenient.
  • Device metadata — gateway manufacturer and model resolved from /gateway/productId (Bosch CT200, Buderus TC100.2); zone devices report EasyControl.
  • Boost switch renamed "Heating boost" in all seven locales.
  • Zone climate preset control removedAUTO/HEAT already wrote the same userMode, so the preset was a second control for one setting. Beta-only, no stable users affected.

Fixed

  • Generic services work on cloud entriessend_custom_get and send_custom_put_* routed through the XMPP client even on POINTTAPI entries, so they were advertised and then raised. debug_scan stays XMPP-only by design; on cloud, diagnostics plus send_custom_get cover it.
  • Child-lock switches attach to their own valve device instead of piling onto the gateway.
  • Thermal disinfect switch reflects its real state — the path uses on/off, not true/false.
  • Burner flame reads actualModulation rather than parsing flameIndication's string dialect.
  • An ambiguous cause code no longer raises a phantom fault — a boiler that was simply lighting up could announce a 24-hour safety shutdown.

Upgrading

Update via HACS and restart Home Assistant. No configuration changes needed.

If you ran beta.2, you may have one leftover "Thermostat valve" device that no longer matches anything. Open it and use ⋮ → Delete — stale valve devices are now deletable from their own device page. Nothing is removed automatically.

A note on valve models

Thermostat-valve devices deliberately carry no model name. Per @jfhautenauven: only the Bosch RT10-RF was ever officially EasyControl-compatible (its development was outsourced to Homematic IP, which explains the naming), Bosch internal notes claim non-Bosch Homematic EQ3 support from firmware 5.4.0, and the ETRV v2 was never EasyControl-compatible at all. POINTTAPI exposes no field that identifies valve hardware, so guessing a model would be wrong for real homematicip installs. Left blank on purpose.

What's next

#22 (installation-level heating settings) targets 1.6.0, #21 (boost redesign for multi-zone/multi-valve) targets 1.7.0.