OK, here it is again, no luck with Kitchen Light
Rick
Your first piston will immediately lock the door when it is closed. Delete the using location wait 5 seconds actions. Under the side door lock action use the wait command there. Then add the lock command
using side door…
wait 5 seconds
lock
On your second piston use a trigger. Time happens at 15 min before/after sunrise.
Your or-if doesn’t have anything to tell it not to fire outside any range. You just have it set to whenever skybell hd goes inactive. So add a condition in there to restrict when it goes off.
Try…
IF
Patio Door stays open for X minutes...
Then
Using Thermostat...
> Turn off
Thanks! I missed the stays open condition.
Then if I want the heat to turn back on when the door closes?
In that situation, I will have to use a variable to keep track that the thermostat was turned off by automation so that someone just closing the door for normal use will not turn the thermostat on, that would not be good lol. I think this will work, not tested
IF
Patio Door stays open for X minutes...
Then
Using Thermostat...
> Turn off
> Set boolean variable autoThermostat true
BUT-IF
Patio Door changes to closed
AND
Boolean variable autoThermostat is true
Then
Using Thermostart...
> Turn on
> Set boolean variable autoThermostat false
Thanks @c1arkbar! So I fixed the Auto Door Lock as you mentioned:
However, I’m unsure if the Outside Night Light automation is correct:
Change from latching to or-if. Should allow you to choose the same trigger as in the original if
Perfect, thanks so much!
How do I do a BUT-IF?
Latching piston type.
thanks!!!
Throw your kitchen light away!
Better yet, throw out the kitchen… LOL
@ady624. The Piston fired again just now at 7:20 as scheduled, no light. Here are the IDE logs
Piston
Thanks, Rick
@Toy4Rick On the second action, set TOS to None. Then your light will work. Second action is overriding actions on the first one, basically cancelling them.
Thanks @ady624, the light works now
What’s interesting is the first action is running to some degree as I see the mode change from Night to Home every morning when the Piston does run.
Anyway, thanks very much
Rick
location tasks are not overridden but the kitchen lights are, because the very next action includes kitchen lights again.
After much googling I don’t think this is possible, but I can’t find it definitively either way
I am trying to use a virtual dimmer to control another dimmer BUT I can’t use things like Dim with Me because I have a sequence of things that need to happen when I turn the virtual dimmer on (its for garden lights, and they have to turn on then off then on to latch the PIR to stay on). Also, setting a level also turns a dimmable switch on, which I dont want to happen due to the need for that latching sequence when turning on
As such, I need two pistons that do
if virtual_dimmer changes to on
then
…turn dimmable_switch on
…wait 1s
…turn dimmable_switch off
…wait 1s
…turn dimmable_switch on
…set dimmable_switch.level = virtual_dimmer.level
end
if
…AND (
…virtual_dimmer.level changes
…virtual.dimmer is on
…dimmable_switch is on
…)
then
…dimmable_switch.level = virtual_switch.level
end
However I can’t find a way to match levels, either by way of variables or functions?
Thanks,
Chris
You can accomplish everything you posted using a single or-if piston. You had everything basically the way it should have been in a piston written out. Probably just didn’t know about the saving and loading attribute part.
The only thing this won’t do is turn off, ever. You did not have that listed so I didn’t incorporate it. Assuming it will be something you need it to do the easy way will be to set a timer on this. In the main IF block actions. Just add a wait xx min/hours/etc and then a turn off.
if for whatever reason you can not see an action listed above in your selection, enable expert mode under general CoRE settings
Yeah the bit I’m missing is the saving/loading attributes. You know when you look at something and wonder how you never saw the option ‘save attribute to variable’.
What I was doing was thinking of it another way, rather than ‘with device x save attribute to variable y’ I was thinking I was looking for an action to set y= x.attribute.
Well thats solved, thanks!