-
Notifications
You must be signed in to change notification settings - Fork 9
Configuration Debug Diagnostics
The Debug & Diagnostics screen gives you targeted tools for troubleshooting cover behavior β from promoting specific log messages to INFO level, to running the full automation pipeline without ever moving your covers.
Open a cover's options (Settings β Devices & Services β Adaptive Cover Pro β Configure) and choose Debug & Diagnostics from the menu.
At the top of the screen, the integration displays a read-only summary of what each bound cover entity supports β whether it can report position, stop mid-travel, and receive open/close commands. This is detected directly from Home Assistant's entity registry, not from your configuration. Use it to confirm why a cover behaves differently from others (for example, why one cover can be sent to a specific percentage but another only receives open/close commands).
| Option | Default |
|---|---|
dry_run |
Off |
When enabled, the integration runs the full update cycle β pipeline evaluation, sensor updates, diagnostics β but does not send any movement commands to your covers. Every sensor updates normally: the Decision Trace shows the handler that won, and Last Skipped Action records what would have been sent and why.
Use Dry Run to:
- Validate a new configuration before going live
- Confirm that the right pipeline handler fires for a given sun position or sensor state
- Test automation logic in the middle of the day without disturbing your home
β οΈ All other automations and manual commands still work normally β only the commands from this integration are suppressed.
| Option | Default |
|---|---|
debug_mode |
Off |
When enabled, log messages for the selected categories below are promoted from DEBUG to INFO. This makes them visible in the Home Assistant log without adding custom_components.adaptive_cover_pro: debug to configuration.yaml.
Turn off when you are done troubleshooting. Leaving it on permanently adds noise to your log and can make other issues harder to spot.
| Option | Default |
|---|---|
debug_categories |
None selected |
Multi-select. Only active when Debug Mode is on. Selecting a category promotes that subsystem's log messages to INFO; unselected categories remain at DEBUG.
| Category | What it traces | When to use it |
|---|---|---|
| Manual Override | Override detection decisions, grace period, wait-for-target logic | A cover won't stop detecting manual control, or it clears the override too early |
| Reconciliation | The 1-minute position retry loop | A cover drifts back to an old position after you move it manually |
| Pipeline | Priority handler chain β which handler fired, which returned None, what position each proposed |
The wrong handler seems to be winning, or a handler isn't firing when expected |
| Motion | Motion sensor events, timeout countdown, transition to timeout state | Motion-based control isn't triggering, or the cover doesn't return to the solar position after motion clears |
Select only the categories relevant to the symptom. Running all four at once produces a lot of output and can make it harder to isolate the issue.
| Option | Default | Range |
|---|---|---|
debug_event_buffer_size |
50 events | 10β200 (step 10) |
Controls how many recent manual-override detection events are kept in a rolling ring buffer. Each event records:
- Timestamp
- Cover entity ID
- Action taken (override started, cleared, extended, etc.)
- Expected position vs. detected position
- Threshold used for detection
- Reason string explaining the decision
Events appear in the HA Diagnostics download for offline analysis. The buffer resets on integration reload.
Increase this value for intermittent issues that require a longer observation window β for example, an override that incorrectly triggers once or twice per day.
| Option | Default | Range |
|---|---|---|
transit_timeout |
45 s | 15β600 s (step 5) |
How long the integration waits β without seeing forward progress toward the commanded position β before it considers the cover's transit complete and starts watching for manual-override moves again.
The clock resets each time the cover reports it moved closer to the target. A cover that takes 90 seconds to close but sends position updates every few seconds will be protected for the full transit, because each progress report resets the timer. Only if a cover completely stops reporting movement for longer than this value will the protection window end early.
Increase this value if you see the cover incorrectly enter manual override shortly after an automatic sunset or default-position move. This typically happens with large motorized blinds, heavy awnings, or any cover whose full traverse takes more than 45 seconds. As a rule of thumb, set the value to at least 1.5Γ your longest full-traverse time.
Covers that don't report intermediate positions (e.g. radio-protocol covers that only signal their final position) fall back to measuring elapsed time from when the command was sent. The transit timeout still protects them β it just uses the send timestamp as the reference instead of the most recent position update.
If you're unsure what value to use, start with 120 s for typical slow shades and adjust up or down based on observed behavior.
| Symptom | Setting to use |
|---|---|
| Cover won't stop detecting manual control | Debug Mode + Manual Override category |
| Cover keeps clearing manual override too early | Debug Mode + Manual Override category |
| Cover drifts back to the wrong position | Debug Mode + Reconciliation category |
| Wrong pipeline handler is winning | Debug Mode + Pipeline category |
| Motion sensor not triggering or releasing | Debug Mode + Motion category |
| Validate a new config without moving covers | Dry Run |
| Intermittent override issue, need more history | Increase Event Buffer Size |
| Slow cover triggers manual override during transit | Increase Transit Timeout |
To download a full diagnostics snapshot: Settings β Devices & Services β Adaptive Cover Pro β three-dot menu β Download Diagnostics. The resulting JSON includes all Debug & Diagnostics configuration values, the manual override event buffer, and a complete snapshot of the last pipeline result.
For a step-by-step troubleshooting guide, see Troubleshooting.
π Getting Started
- Installation
- Migrating from Custom Repository
- Migrating from Adaptive Cover
- First-Time Setup
- Cover Types
π§ Core Concepts
π Cover Types
βοΈ Configuration
- Sun Tracking
- Position
- Glare Zones
- Automation
- Custom Position
- Force Override
- Weather Safety
- Climate
- Blindspot
- Summary Screen
- Debug & Diagnostics
π Entities & Services
π¨ Dashboard
π§ Advanced Use Cases
π οΈ Operations
π§ͺ Testing & Simulation
π Reference
π©βπ» For Developers