-
Notifications
You must be signed in to change notification settings - Fork 14
Home
Jason Rhubottom edited this page Apr 19, 2026
·
11 revisions
This Custom-Integration provides sensors for vertical and horizontal blinds based on the sun's position by calculating the position to filter out direct sunlight.
This integration builds upon the template sensor from this forum post Automatic Blinds
- Individual service devices for
vertical,horizontal, andtiltedcovers - Two calculation modes β Basic and Climate β both wrapped by a shared override pipeline
- Binary sensor tracking when the sun is in front of the window
-
startandendtime sensors - Smart device naming β suggests a device name based on the selected cover entity
-
Position-capable and open/close-only covers, detected automatically at runtime
- Configurable threshold for open/close decision (default 50%)
-
Tilt-only covers (Z-Wave, some KNX) β entities that expose only
SET_TILT_POSITIONare routed throughset_cover_tilt_positionautomatically, regardless of the configured cover type (v2.18.0) - Inverse state support for covers that report position with reversed semantics
-
Force Override β binary sensors (rain, wind, window-open, fire-alarm, etc.) move covers to a configured safe position at top priority (100)
- Default position 0% (fully retracted) or customizable (e.g. 100% for security sensors)
- Minimum position mode β treat the override position as a floor rather than a fixed target
- Manual control still works during force override
- Weather safety (priority 90) β wind speed, rain rate, or severe-weather binary sensors trigger retraction with a configurable recovery timeout
- Manual override (priority 80) β automatic detection of physical/app/voice cover moves pauses automatic control; persists across HA reboots and integration reloads (v2.17.3)
- Motion-based automatic control (priority 75) β OR logic across any number of occupancy sensors; when none have detected motion for the configured timeout (30β3600 s, default 300 s), covers return to default. Leave the sensor list empty to disable.
- Climate mode β temperature-aware winter / summer / intermediate strategy with optional presence, weather, lux, and irradiance inputs; a dedicated switch toggles it on/off and a Climate Status sensor reports the current strategy
- Glare zones (vertical blinds only, priority 45) β protect named floor areas from direct sunlight; each zone has distance, width, and priority; now fires correctly when climate mode is active with presence (v2.18.0, #231)
- Cloud suppression (priority 60) β lux, irradiance, cloud coverage, or a weather entity's state can suppress solar tracking and return the cover to default; sensor changes trigger immediate re-evaluation (v2.17.5) rather than waiting for the next 5-minute refresh
- Blind spot β angular range within the field of view where a tree, pillar, or neighbouring building blocks direct sun
- Master Integration Enabled kill switch + per-instance Automatic Control toggle
- Optional return to default position when automatic control is disabled
- Start / end time window (fixed clock times or driven by sensors /
input_datetime) - Minimum position change and minimum interval between moves
- Custom positions β up to 4 sensor-triggered positions, each with its own priority (1β99, default 77)
- Automatic Position Verification β every minute, confirms covers reached the commanded position; up to 3 retries before backing off; respects manual override, Automatic Control, Integration Enabled, and the time window (see Position Verification)
-
15 runtime configuration services β
adaptive_cover_pro.set_position_limits,set_sunset_sunrise,set_automation_timing,set_manual_override,set_force_override,set_custom_position,set_motion,set_light_cloud,set_climate,set_weather_safety,set_sun_tracking,set_blind_spot,set_interpolation,set_geometry, and theset_optionescape hatch - Change any setting from automations, scripts, or templates without opening the Options UI; all changes persist across restarts and trigger a full integration reload
- See Runtime Configuration Services for the full reference
-
Always-on diagnostic sensors (diagnostic entity category, no setup required) β 10 always-created plus up to 3 conditional:
- Sun Position β azimuth, elevation, gamma, FOV bounds, in_fov
- Control Status β why covers are/aren't moving, delta thresholds, time since last action
-
Decision Trace β full pipeline evaluation showing which handler won and why;
position_explanationon the Target Position sensor shows the complete chain (e.g."Sun tracking (45%) β Climate: Winter Heating β 100%") - Last Skipped Action β most recent suppressed move with reason, position delta, and thresholds
- Last Cover Action β most recent cover command with full details
- Manual Override End Time β when automatic control will resume; persists across reboots (v2.17.3)
- Position Verification β last check time and retry count per cover
-
Motion Status β motion control state; shows
not_configuredwhen no motion sensors are set up - Climate Status (when climate mode is configured) β active temperature and climate strategy
- Force Override Triggers (when force override sensors are configured) β count and per-sensor status
- Position Mismatch binary sensor (disabled by default) β true when any cover is outside the position tolerance
-
Debug Mode β toggle INFO-level category logs (manual override, reconciliation, pipeline, motion) + a rolling ring buffer included in diagnostics downloads; no
configuration.yamledits required
- Angle-dependent safety margins for better sun blocking at extreme angles
- Automatic edge case handling for very low (<2Β°) and very high (>88Β°) sun elevations
- Smooth transitions across all sun angles using smoothstep interpolation
- Optional Window Depth parameter for advanced precision with deep reveals
- Optional Sill Height for raised windows
- Backward-compatible β existing installations benefit immediately;
window_depth=0andsill_height=0are identical to earlier versions
- Shown as the final step of initial setup and available any time from the options menu
- Organized into four sections, only rendering what is actually configured:
- Your Cover β what is being controlled and the physical window dimensions
- How It Decides β narrative explanation of every active rule in priority order
- Position Limits β default position, min/max range, delta thresholds, and flags (inverse state, interpolation) on one line
- Decision Priority β compact one-line reference of all 10 pipeline handlers with β / β status
-
Cover Warnings (v2.17.5) β flags open/close-only covers,
assumed_state, mixed capabilities across entities, and configured position limits that will never apply; hidden when nothing is flagged
π Home Β· β¨ Features Β· π° What's New
π Getting Started
- Installation
- Migrating from Custom Repository
- Migrating from Adaptive Cover
- First-Time Setup
- Cover Types
π§ Core Concepts
π Cover Types
βοΈ Configuration
- Sun Tracking
- Position
- Position Matching
- Glare Zones
- Automation
- Custom Position
- Force Override
- Weather Safety
- Climate
- Templated Thresholds
- Blindspot
- Summary Screen
- Debug & Diagnostics
π Entities & Services
- Entities
- Proxy Cover Entity
- Position Verification
- My Position Support (Somfy RTS)
- Runtime Configuration Services
π οΈ Operations
π§ Advanced Use Cases
- Dynamic Temperature Thresholds
- Dynamic Tracking Window
- Bedroom Sleep Mode
- Handling Variable Cloud Cover
- Venetian Tilt-Only on Overcast Days
- Forecast-Based Shading
π¨ Dashboard
π§ͺ Testing & Simulation
π Reference
π©βπ» For Developers