Trying my first complex rule using the Rule engine. Please help if I am programing it correctly. Thanks in advance.
Devices to control: A shade called 'Office Blind' and a Lutron Switch called 'Office Blind Switch'.
Peudo Code
Start of the day
ā¢ Two mins before 7 am, turn ON 'Office Blind Switch'
ā¢ At 7am, Set 'Office Blind' to 100% open
ā¢ Once Blind is at 100% open position (i.e., previous event is complete), turn OFF 'Office Blind Switch'
Late Morning
ā¢ Two mins before 10:30 am, turn ON 'Office Blind Switch'
ā¢ At 10:30am, Set 'Office Blind' to 50% open position
ā¢ Once Blind is at 50% open position (i.e. previous event is complete), turn OFF 'Office Blind Switch'
Evening Shutdown
ā¢ Two mins before next step (which will be sunset minus 15 mins), turn ON 'Office Blind Switch'
ā¢ At 15 minutes before SUNSET, Set 'Office Blind' to 100% CLOSE position
ā¢ Once Blind is at 100% Closed (i.e. previous event is complete), turn OFF 'Office Blind Switch'
Making dinner as I type, so I am not digging into the logic of your rule. But I do want to give some quick feedback.
You can, and should, break this into 3 rules. Simpler rules are better. Rules are free, use as many as you want. Three simpler ones is often better than one complex one, for troubleshooting as well as just easier to write.
And without digging to see if it can actually handle this, have you tried Simple Automation app for any of this? I would think that it could handle some of it?
1 Like
Makes sense. Let me give that a shot.
Although enticing, it's not recommended to have high processing rules if you can help it. I'd split this up in to a bunch of little rules and use simple automation and the other built-in's where you can. I agree 100% with @neonturbo
Simple Automation wouldn't work 'cos I want to control Shades (unless I totally missed the fact that one can also control shades using simple automation). Anyhow, I broke down the rules and I think I have a handle of it. One quick question, in the following logic, on last line (in bold), can I somehow use the position of Shades to be fully open (use 'Wait for Condition'?) as my trigger, than having to delay the action manually for 3 mins to allow for the shades to be open before the switch turns off?
IF (Office Blind Switch(off) is off(T) [TRUE]) THEN
On: Office Blind Switch
Raise Shades: Office Blind --> delayed: 0:00:30
ELSE
Raise Shades: Office Blind
END-IF
Off: Office Blind Switch --> delayed: 0:03:00
Just asking, as I don't know your device layout and types.
-
Office blind switch is a button? A wall switch? An outlet?
-
So you activate this switch (why?) before operating the blinds?
-
The blinds don't just stop at the place when commanded to 100% or whatever?
Yes, I believe you could do that, although I am not as familiar with WAIT as some of the other functions.
I don't have a blind to try, but why not simplify this rule. Get rid of the first IF THEN.
Trigger 7AM
Actions
- Turn on Office Switch
- Delay 5 seconds (or some short period, 30 seconds is probably excessive)
- Raise Blinds (level?) 100% (not sure, but don't they give position?)
- Wait for Events (blind position?)
- Turn off Office Switch
Not sure why I went the route to make it so complex. Your suggestion worked beautifully. Simplified it as per your suggestion and it worked like a charm. Thanks a lot
On: Office Blind Switch
Raise Shades: Office Blind --> delayed: 0:00:05
Wait for events: Office Blind is windowShade(open) open
Off: Office Blind Switch --> delayed: 0:00:05
Wow, glad it worked! Sometimes you never can tell without trying it.