Skip to content

Blinds Fully Open When Sun Near Horizon #559

@alexblanck

Description

@alexblanck

Checklist

  • I have worked through the Troubleshooting wiki page and my issue is not covered there.
  • I have confirmed I am running the latest release.
  • I have searched existing bug reports and this is not a duplicate.
  • This report covers a single bug (open a separate issue for each additional bug).
  • I have attached the diagnostics file as an upload (drag-and-drop the JSON file into the Diagnostics field below — do not paste its contents). See Downloading Diagnostics.

Adaptive Cover Pro version

2.27.0

Home Assistant version

2026.5.4

Cover type

Vertical Blind

Describe the issue

During sunset last night, I noticed my blinds opened 10-15 minutes before the actual sunset. Looking at the UI card during this time, the “solar” control method was active yet the blind position jumped from something like 2% (mostly closed) to 100% (fully open).

I noticed that this seemed to occur when the sun fell below a sun angle of 2 degrees, so I did an experiment this morning:

I set up a test east-facing window and turned on debug logging. At sunrise, I noticed once again that the solar control was active yet the blind was still fully open. But this time, I had enabled debug logging and could see that the edge case handling was active:

2026-06-09 07:49:39.160 DEBUG (SyncWorker_0) [custom_components.adaptive_cover_pro.const] [Adaptive East Facing Test] Vertical calc: edge case detected (elev=0.6°, gamma=24.6°) � 2.095m
2026-06-09 07:49:39.161 DEBUG (SyncWorker_0) [custom_components.adaptive_cover_pro.const] [Adaptive East Facing Test] Converting height to percentage: 2.0955 / 2.0955 * 100

Once the sun rose to above 2 degrees in elevation, edge case handling was no longer active and the blind closed:

[custom_components.adaptive_cover_pro.const] [Adaptive East Facing Test] Vertical calc: elev=2.3°, gamma=23.8°, dist=0.495�0.495 (depth=0.000, sill=0.000), base=0.022, margin=1.115, adjusted=0.024, clipped=0.024, source=base
2026-06-09 08:08:53.685 DEBUG (MainThread) [custom_components.adaptive_cover_pro.const] [Adaptive East Facing Test] Converting height to percentage: 0.024355794252858567 / 2.0955 * 100

And indeed, the edge case handling only applies below 2 degrees

EDGE_CASE_LOW_ELEVATION = 2.0 # deg — below this, use low-elev path

Therefore, I suspect the problem may be that the edge-case logic returns ‘h_win’ here while it should actually return ‘0’

# Very low elevation: sun nearly horizontal, full coverage safest
if sol_elev < EDGE_CASE_LOW_ELEVATION:
return (True, h_win)

Basically, it looks like the comments and implementation may not match: the comments say we should fully cover the window, but in reality we return the height of the window which is interpreted as “fully open”.

The comments and docs for the high-gamma edge case also seem potentially inverted, but you would know better than I.

Thanks for all your work on this integration! I’m impressed by all the capabilities and diagnostic information it exposes.

Reproduction steps

...

Diagnostics file (attachment)

config_entry-adaptive_cover_pro-01KTNGG8VS5QCSCVR4H1DRNH01.json

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions