-
Notifications
You must be signed in to change notification settings - Fork 15
Configuration Oscillating Awning
An oscillating awning β also called a drop-arm or pivoting-arm awning β differs from the standard Horizontal awning in one important way: the arm sweeps through an arc as it opens, so the fabric's angle and horizontal reach change with the open percentage rather than staying at one configured angle.
If your awning is mounted on the wall above the window and the arm rotates outward/downward as it extends (e.g. a Somfy PositionableScreen via Overkiz), this is the type to choose.
Choose Oscillating awning (drop-arm) in the cover-type picker during setup.
The pivot arm of length Arm Length swings from a closed angle to a fully-open angle. The integration models the sweep as linear in the open percentage:
arm_angle(p%) = min_angle + (max_angle β min_angle) Γ p / 100
The fabric tip's horizontal reach at angle ΞΈ is arm_length Γ sin(ΞΈ). To shade the window at your configured shaded distance, the integration computes the horizontal reach it needs and then finds the open percentage whose arm angle projects that far.
Because the angle is derived from position, the fixed Awning Angle field used by the standard horizontal awning is not shown for this cover type.
| Field | Default | Range | Meaning |
|---|---|---|---|
| Window Height | 2.1 m | 0.1β50 m | Height of the glazing the awning shades. |
| Window Depth (Reveal) | 0.0 m | 0.0β5 m | Optional recess depth for angled-sun accuracy. |
| Window Sill Height | 0.0 m | 0.0β50 m | Optional height of the sill above the floor. |
| Arm Length | 0.8 m | 0.1β6.0 m | Length of the pivot arm from the wall pivot to the fabric edge. The maximum horizontal reach. |
| Arm Angle When Closed | 0Β° | 0β180Β° | Arm angle at 0 % open. Typically 0Β° = arm vertical against the wall. |
| Arm Angle When Fully Open | 175Β° | 0β180Β° | Arm angle at 100 % open. |
| Housing Offset Above Window | 0.0 m | 0.0β1 m | Vertical offset of the pivot above the window top. Set 0 when the housing sits flush with the window top. |
Lengths are shown in the unit Home Assistant is configured for (metric or US-customary).
The bound cover entity should support
set_cover_positionso intermediate positions across the arc can be commanded. If no bound cover advertisesset_position, only open/close is issued and the awning can't track the sun smoothly β a warning is shown during setup.
From the reporter's measurements (#412):
- Arm length 0.8 m, mounted 0.8 m above the bottom edge of the window.
- Housing 11 Γ 11 cm, flush with the window top.
- Total sweep 175Β° β so the arm opens 1.75Β° per 1 % of position.
Enter Arm Length 0.8, Arm Angle When Closed 0, Arm Angle When Fully Open 175, and your window height. At 50 % open the arm sits at β 87.5Β°.
This is the most important parameter to get right. Set it to the angle where the arm reaches its maximum useful horizontal projection -- not necessarily the arm's full mechanical travel.
For a typical drop-arm awning the arm swings from roughly vertical (0Β°) outward. Horizontal projection peaks when the arm is at 90Β° and then decreases as the arm continues past horizontal. At 180Β° the arm points straight back at the wall and provides no shade at all.
| Setting | What it means |
|---|---|
max_angle = 90Β° |
100 % open = arm horizontal = maximum shade. Recommended for most drop-arm awnings. |
max_angle = 175Β° |
100 % open = arm nearly wall-pointing. Maximum shade occurs around 51 % open. |
max_angle = 180Β° |
Same problem: maximum shade at exactly 50 % open; positions above 50 % reduce shade. |
Why does this matter? The integration computes the minimum arm extension needed to shade the window and then maps it back to a position percentage. With max_angle=90, that full-extension result maps to positions near 100 %. With max_angle=180, the same full-extension result maps to 50 % because arcsin is bounded at 90 degrees. You will observe the awning seeming to "cap" well below your max_position setting -- this is correct geometry, not a bug.
If your awning's arm physically travels past horizontal (e.g. for ventilation or fabric tension) but the useful shading range ends at horizontal, set Arm Angle When Fully Open = 90. The integration will still command any position from 0-100 % of that range.
max_position (under Position Settings) caps how far the integration will command the awning -- it will never send a position above this value. It does not instruct the integration to drive toward that position. The engine computes the geometrically required extension for shade at the current sun angle and then applies the ceiling. Setting max_position = 93 % means "never go above 93 %, but only extend as far as the sun angle requires."
To always drive to a fixed position when the sun is in the window's field of view, use a Custom Position handler.
- This is a first-order geometric model (linear arm sweep, arc projection). It captures the essential angle-vs-extension behaviour; if your hardware's angle curve is non-linear, the closed/open angles still bound the sweep correctly.
- Everything else -- sun tracking, position limits, climate, weather safety, overrides -- works exactly as it does for other cover types.
See also: Cover Types Β· Horizontal awning.
π 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