Skip to content
ConfigurationDiagnostics

Smart Fan Automation Runs at Night Despite an Occupancy-Only Rule

Fan starts during unoccupied hours even though motion rule is set to require presence. Learn to separate a second schedule controls the fan from presence state has not expired without destructive resets.

Quick Answer

Check every automation attached to the fan device. Test each rule with a harmless notification action. Then confirm: Fan runs only after validated occupancy and stops on the configured timeout.

Symptoms

Fan starts during unoccupied hours even though motion rule is set to require presence.

Use the following observations to establish that this is the specific failure described here, rather than an unrelated outage or different account:

  • Failing behavior: Fan starts during unoccupied hours even though motion rule is set to require presence.
  • Comparison to run: Compare rule trigger history with occupancy sensor transitions and app time zone.
  • Pass condition: Fan runs only after validated occupancy and stops on the configured timeout.

Why It Happens

A raw event is not the same thing as an automation action. Timing, state mapping, hub subscriptions and the physical device must be checked separately.

Treat these as competing hypotheses, not confirmed diagnoses. Their implications are different:

  1. A second schedule controls the fan — investigate this first only if the local state or controlled comparison supports it.
  2. Presence state has not expired — a second layer that may survive a simple restart and requires a targeted check.
  3. Rule uses OR instead of AND condition — investigate when the first two paths do not account for the observed behavior.

Before Making Changes

Avoid turning off ventilation required for indoor air quality or safety. A smart-home event can be detected correctly by a sensor but then delayed or misread by the hub, bridge, cloud integration or automation rule. Separate raw sensor state from the action triggered by that state. Write down the working configuration and, if available, export settings or create a test-only copy before changing account permissions, routes or file locations.

Make one change at a time, note the original value, and repeat the exact same test after each change. If the new outcome is worse, restore that single setting; a full reset would erase evidence and can create additional problems.

Problem-Specific Diagnosis

Begin with this controlled observation: Compare rule trigger history with occupancy sensor transitions and app time zone. Record the result and time; a vague report such as “sometimes fails” cannot distinguish the three hypotheses.

Check What to do What the result tells you
Compare a working path Compare rule trigger history with occupancy sensor transitions and app time zone. If one controlled route works, the failed route is probably specific to a setting, permission, device, or service rather than a total outage.
Check the local state Check every automation attached to the fan device. This can expose or rule out a second schedule controls the fan without changing several settings together.
Inspect the deeper layer Inspect occupancy debounce and state expiry timing. Use the evidence to separate presence state has not expired from rule uses or instead of and condition; do not assume either is proven.

If the local comparison is inconclusive, keep the current system unchanged while checking whether presence state has not expired is consistent with the evidence. If not, investigate rule uses or instead of and condition rather than applying every possible fix.

Step-by-Step Troubleshooting

Use Beginner for reversible checks; use Advanced only when the comparison indicates a deeper fault.

Capture the failing state

Fan starts during unoccupied hours even though motion rule is set to require presence. Run a harmless test and write down the time, device/account, current status indicators and the exact difference from normal behavior. Compare rule trigger history with occupancy sensor transitions and app time zone. Do not erase logs or reset the device yet.

Check the first reversible condition

Check every automation attached to the fan device. Confirm the relevant account, cable, selected output, permission or status before saving changes. If it is already correct, leave it alone and proceed; do not force a change just to try something.

Apply the lowest-risk targeted fix

Test each rule with a harmless notification action. Change only this one condition after recording the old value. If it does not improve the result, restore the former value rather than layering additional guesses on top.

Retest and document

Fan runs only after validated occupancy and stops on the configured timeout. Repeat the same comparison used in step one. Record what improved, what remains unchanged and whether a reconnect or normal app restart changes the result. Stop here if the expected outcome is stable.

Solution Checklist

0/12 completed

Common Mistakes to Avoid

  • Treating a second schedule controls the fan as certain before running the comparison: Compare rule trigger history with occupancy sensor transitions and app time zone.
  • Trying several changes at once, such as modifying presence state has not expired and rule uses or instead of and condition simultaneously, which makes the successful change impossible to identify.
  • Ignoring the safety boundary: Avoid turning off ventilation required for indoor air quality or safety.
  • Assuming that a status label or progress indicator guarantees the actual action completed; verify the outcome independently.

How to Verify the Fix

Fan runs only after validated occupancy and stops on the configured timeout.

  • Repeat the original failing action under equivalent conditions: Fan starts during unoccupied hours even though motion rule is set to require presence.
  • Run the control again: Compare rule trigger history with occupancy sensor transitions and app time zone.
  • Check the positive pass condition: Fan runs only after validated occupancy and stops on the configured timeout.
  • Recheck after a normal restart, reconnection or scheduled cycle only when it is safe and relevant.

A single passing attempt is useful but may conceal intermittent failures. Record whether the fix survives the triggering condition without requiring a daily workaround.

If the Problem Continues

Use the deeper comparison rather than repeating the first steps: Inspect occupancy debounce and state expiry timing. Review platform rule priority and manual override history.

Give vendor support sanitized event times, hub model, raw-state transitions and firmware details; treat safety and access-control devices as safety equipment, not debugging toys.

If the issue affects money, alarms, shared business records, or protective power equipment, stop risky experiments and use the official administrator, provider or manufacturer channel.

Prevent Recurrence

  • Keep a record of the previously failing condition: Compare rule trigger history with occupancy sensor transitions and app time zone.
  • Preserve the corrected behavior: Fan runs only after validated occupancy and stops on the configured timeout.
  • Preserve hub backups and automation screenshots; test critical automations after hub, battery or time-zone changes.
  • Review configuration or hardware changes that could reintroduce a second schedule controls the fan.

Frequently Asked Questions

Does this symptom prove a second schedule controls the fan?

No. Start with the controlled comparison: Compare rule trigger history with occupancy sensor transitions and app time zone. Only treat a second schedule controls the fan as a candidate until the evidence supports it.

What if the first two checks do not change anything?

Move to a different layer rather than repeating the same action: Inspect occupancy debounce and state expiry timing. That helps determine whether presence state has not expired or rule uses or instead of and condition fits the symptoms.

How do I know the repair actually worked?

Use this outcome, not just an on-screen status message: Fan runs only after validated occupancy and stops on the configured timeout. Keep a record of the working state for future troubleshooting.

Did this solution fix your problem?

Optional feedback helps us improve this guide. Never send private data.

Can't find your answer?

Tell our editors which problem needs a guide. Do not include passwords, API keys, email addresses, private URLs, or full error logs.

Analyze Error

Paste an error message to identify its likely category. Analysis takes place in your browser; only a short error category will be used if you choose to search.

Do not paste passwords, tokens, private URLs or full logs.