Skip to content

Basic Mode

Jason Rhubottom edited this page May 7, 2026 · 3 revisions

Basic mode

Basic mode is the pipeline with Climate mode disabled. All override handlers still run; the Climate handler (priority 50) skips and the pipeline falls through directly to Glare Zone (priority 45) and Solar (priority 40) for sun-position control.

graph TD
  A[("fa:fa-sun Sun data")] --> PIPE

  subgraph PIPE ["Override Pipeline (highest priority wins)"]
    direction TB
    P1["Force override active?"] -->|Yes| R_FORCE["Fixed position"]
    P1 -->|No| P2["Weather override active?"]
    P2 -->|Yes| R_WEATHER["Safe retract position"]
    P2 -->|No| P3["Manual override active?"]
    P3 -->|Yes| R_MANUAL["Hold position"]
    P3 -->|No| P4["Motion timeout active?"]
    P4 -->|Yes| R_MOTION["Default position"]
    P4 -->|No| P5["Cloud suppression active?\n(lux / irradiance / weather)"]
    P5 -->|Yes| R_CLOUD["Default position"]
  end

  P5 -->|No| GLARE

  subgraph GLARE ["Glare Zone handler (priority 45, vertical blinds only)"]
    direction TB
    G1{"Active zone\nin sun's path?"}
    G1 -->|Yes| G2["Lower blind to\nshield floor zone"]
    G1 -->|No| G3(["No result β€” defer to Solar"])
  end

  G3 --> SOLAR

  subgraph SOLAR ["Solar handler (priority 40)"]
    direction TB
    B1{"Within time window\nand sun in FOV?"}
    B1 -->|Yes| B2["Calculated sun-tracking position"]
    B1 -->|No| B3(["No result β€” defer to Default"])
  end

  B3 --> DEFAULT

  subgraph DEFAULT ["Default handler (priority 0)"]
    direction TB
    D1{"Sunset window\nactive?"}
    D1 -->|Yes| D2["Sunset / My position"]
    D1 -->|No| D3["Default position (h_def)"]
  end
Loading

How each stage works

Override handlers (priorities 100–60)

Force override, weather safety, manual override, motion timeout, and cloud suppression all behave identically in basic mode. If any condition is met, the pipeline stops there and returns its result before solar tracking runs. See the individual configuration pages for details.

Glare Zone handler (priority 45, vertical blinds only)

When active glare zones are configured, this handler lowers the blind further than the solar position alone would. It uses the geometry of the closest zone in the sun's path: if that zone is nearer to the window than the cover's base tracking distance, the blind deploys enough to put the zone in shadow. If all zones are already in shadow from normal solar tracking, the handler returns no result and the pipeline continues to Solar. See Glare Zones.

Solar handler (priority 40)

When the sun is within the cover's configured field of view and the current time is within the start/end window, the integration computes the exact blind position to block direct sunlight using the cover's geometry. Configured position limits (min/max) are applied. If the sun is outside the field of view or outside the time window, this handler returns no result.

Default handler (priority 0)

Always fires as the final fallback. During the sunset window it returns the configured sunset position (or the hardware "Use My" preset when enabled); outside that window it returns the default open position.

Clone this wiki locally