v2.9.0
Highlights
v2.9.0 is about giving you more windows into what the integration is deciding and why. The new Standalone Decision Strip Card lets you place the pipeline trace wherever it fits on a dashboard — useful when the main card's full footprint is too much but you still want to see which handler is winning. The new Solar Calculation Diagnostic exposes exactly what math the integration ran to pick a solar target: inputs, intermediate geometry, and the final output, organized by cover type and defaulting to a curated view that surfaces the fields most likely to explain unexpected behavior. Two smaller improvements round out the release: open and close buttons in the tile card disable themselves when a cover is already at its travel limit, preventing commands the integration would reject anyway, and a longstanding bug is fixed where the show_decision_summary option on the main card's decision strip was bound as an HTML attribute instead of a Lit property and therefore silently had no effect regardless of value.
Added
-
Standalone Decision Strip Card (
src/adaptive-cover-pro-decision-card.ts,src/adaptive-cover-pro-decision-card-editor.ts,src/const.ts) — new card typeadaptive-cover-pro-decision-card(classAdaptiveCoverProDecisionCard) that renders the 10-handler pipeline decision strip in isolation, independent of the main card. Config typeAdaptiveCoverProDecisionCardConfigsupports:title(optional header string),compact(tighter row spacing; forceshide_inactive_handlerson),hide_inactive_handlers(show only the winner and actively matched handlers),show_decision_summary(plain-English summary above the grid, defaults true), andtooltips(TooltipsConfig). A visual editor (AdaptiveCoverProDecisionCardEditor, registered underDECISION_CARD_EDITOR_NAME) is included. New i18n strings in English and French. Refs #170, PR #172. -
Solar Calculation Diagnostic Section (
src/components/solar-calc.ts,src/lib/solar-calc.ts,src/const.ts) — new componentacp-solar-calc(classAcpSolarCalc) that renders the integration'ssolar_calculationsensor as a structured trace: inputs → intermediate geometry → final output, broken out per cover type (blind, awning, tilt). Shows a curated subset of fields by default (defined byCURATED_INTERMEDIATES,INPUT_KEYS,OUTPUT_KEYS,RESERVED_KEYS) with a "show all" toggle, a status chip, venetian dual-axis display, and a graceful fallback when no solar target exists. Pure helpersbuildSolarCalc,buildSolarCalcView,buildFields, andbuildAxisinsrc/lib/solar-calc.tsalongside typesSolarField,SolarAxisView, andSolarCalcView. Wired into the main card as an opt-insolarsection viashow_sections; available in the tile more-info dialog under Advanced viashow_solar_calc(defaults true). Entity rolesolar_calculation_sensoradded toUNIQUE_ID_ROLES. Both visual editors gain a toggle. The section self-hides when the companion integration does not expose thesolar_calculationsensor, so existing setups see no change. Refs #169, PR #171. -
Cover travel limit enforcement (
src/adaptive-cover-pro-tile-card.ts) — the tile card now disables the open button when the cover is fully open (atOpen: reported position ≥ 100%) and the close button when fully closed (atClosed: reported position ≤ 0%), preventing redundant commands at the travel extremes. No config option; always active. Commit 22715a9.
Fixed
show_decision_summarybinding on main card (src/adaptive-cover-pro-card.ts) — the main card was passingshow_decision_summaryto the decision strip as an HTML attribute, but the strip expects a Lit property (.showSummary). The mismatch meant the config option had no effect regardless of value. Now bound correctly as a property. Refs #173, PR #174.
Compatibility
- Home Assistant 2024.1+
- Adaptive Cover Pro integration: a recent build that exposes the
solar_calculationdiagnostic sensor is required for the Solar Calculation section; the card self-hides that section on older integration versions, so no minimum version is enforced for existing features - No config migration needed — all new options are opt-in or default-safe
Install / Upgrade
Through HACS, update to v2.9.0. A browser restart is not required.
HA caches ES modules aggressively. After updating, bump the ?v=2.9.0 query string on your Lovelace resource URL (/hacsfiles/adaptive-cover-pro-card/adaptive-cover-pro-card.js?v=2.9.0) to ensure browsers pick up the new bundle. A hard-refresh alone is not sufficient.