CoRE - Get peer assistance here with setting up Pistons

I’m losing my mind on something that should be fairly simple.

If - All of these motion sensors are inactive, then wait 1 minute and turn off these lights. (test wait time only)

When I look at the piston the Current Evaluation is true. Therefore, I should only have to wait 1ish minutes and the lights will turn off. Right? Wrong?

I have tried Is, IS Not, Was, Was Not, Stays, Stays Away From. None of them seem to work.

I do have auto lights that Turn on with motion and then turn off using Changes to and those work great. But a no go on just turning things off based on multiple motion sensors.

Any help would be most appreciated. Here is one of the not working versions.

(I replace my hue bridge, and so have to re-do everything with lights. It kept the pistons, but any thing that used the lights is gone out of them. I swear I had a working version of this before…)

For this one I would try
Phone changes to Not Present (or Is not Present), then lights Wait 15 min then Turn Off. (Assuming you want the delay)[quote=“Coolsaber57, post:8079, topic:50187”]
Turning off the Basement lights
[/quote]

OMG, this drives me crazy. I have a post below asking the same sort of thing. I assumed mine was due to needing feedback from multiple sensors. Just in case yours is simpler, for some reason I have had better luck with Then If, rather than And. I doubt it will work, but you could try it. It worked for one of my other pistons.

Edit: So I have been fighting with this, and tried something strange. I added another criteria of Luminescence. (My motion sensors also do Lux). As soon as I added if Lux is greater than 3 as an additional condition, the whole thing worked. I think it must have something to do with forcing the sensor to report? Or getting the pistio to evaluate something more. Regardless. This won’t work in my basement as my Lux sensors seldom report anything more than 0 down there. But I will try somethings out and see. I don’t know if adding something that requires more evaluating will help you at all.

Changes away from Wet? I’m not sure that is an option.(There are lots of choices in the interface that don’t seem to work with certain devices) Seems like it would belong to a moisture sensor, but not the Weather tile. Maybe Precipitation in the last hour? Humidity?

Thank you for the reply!

  1. I was actually able to remove the first one entirely and use Smart Lighting to just turn off the lights when it detects that both Presence sensors have left, which is really what I was trying to accomplish. I was overcomplicating it, hah.

  2. I was doing some reading on the wiki and figured out that you can’t have two Triggers (those in the If section with a filled-in dot on the lefthand side) because they’ll never be true at the same time. I think this is actually my problem with a few of these, so I’ll have to re-think how I can accomplish this. I might just use the motion sensor staying inactive for 15 minutes as my trigger and leave the door sensor out of it.

  3. I had read on this board that people were using that Water field as the trigger, so I wanted to do the same. I do know that it only updates once every 15 minutes, but I would think it’d still show the change to wet. I’ll keep digging on this one, but if anyone else has figured out which parameter to use to identify Rain, I’d be all ears.

I have multiple pistons like this.

I would try

If All motion Is Inactive
Then
Using Lights…
Wait 1 minute
Turn Off
Cancel on Piston State Change

Might be just the right push to send you over to webCoRE!

Huh, I did not know that webCoRE was a thing!

Can you explain what the “Cancel on Piston State Change” means and when it’s used?

Oh, It a thing and its a Big Thing!

1 Like

Weird. That’s exactly what I had. Tried in both Core and Webcore.

I added a Lux condition and now it works. :persevere:. Doesn’t make sense. But it’s got to be something about my Sensors not triggering it. Maybe it’s my type of sensor. Aeon labs.

Had a Zooz multi that was giving me the blues. Tried a different DTH and haven’t had a problem out of it since. The problem with me was, even though the sensor was showing motion/no motion in the app, it was not showing active/inactive in the Dashboard of CoRE.

I am a new core user and trying to figure out my first simple piston. My case is as follows: if motion is detect in my daughter’s room between 5pm and 10pm (hours she is active in room when she is at our house) then set thermostat to temp X degree between hours A and B or set thermostat to temp Y between hours C and D. The main issue I seem to be having is that I can’t seem to find a comparison that makes motion in her room true for the entire time been 5pm and 10pm. I would think it would be the “was” condition (motion WAS active for at least 1 min) however, this seems to be false even after motion. Here is how I currently have it set up.

Another question. Once core finds the condition true, and changes the thermostat, will it not change it again when the condition is false if I don’t have an “else” condition?

Any help would be appreciated. Thanks!

Can anyone provide any help figuring out why a global variable set in 1 piston is coming as ‘null’ in a DO piston executed by the first one? Seems like this should be so simple!

I’m new to CoRE and am setting up my first Piston but need some help.

Scenario:
Turn on Shower and Bathtub light when bathroom door is closed
Turn off Shower and Bathtub light when the bathroom door is open
or
Turn off Shower and Bathtub light when no motion bathroom sensor for 10 minutes

How do I set this up?

I have this setup so far but I don’t know how to add the delayed no motion condition if the door is closed.

Piston Mode Else-If
If
Bathroom Door Contact is closed
Then
If time is between sunrise and midnight
Using Shower and Bathtub
Fade level from (not set)% to 100%
In 5s (only for Night or Home)
Else If
Bathroom Door contact is open
Then
Using Shower and Bathtub
Turn off (only for Night or Home)

Seems most everyone has moved to webCoRE. Not sure how much help you’ll get here.

https://community.smartthings.com/t/webcore-beta-milestone-1?source_topic_id=50187

I’m making the switch now. Good timing for me since I’m not needing to transition with a ton of Pistons.

Has the load from variable been fixed? Trying to set my thermostat back to it’s original setpoint after exiting from party mode. (Second actions)

Are you just getting the variable back as Null when you read it later like I am??


For some reason my master lights piston will usually always set the lights to 100% untill I press the house switch again then it re runs the piston and corrects itself.
I have this piston tied to a virtual switch that gets turned on by I’m home routine. Everything seems to work fine except for the level set point. Any suggestions

Is there a way, maybe using a loop, to check battery levels on any device using a battery? I know I can individually list each device, but I don’t want to have to add each new device to the piston as they come along.

Smart people in the room if i hve moved most of SHM to CoRE how would I go about there being a delay in the sirens going off/intrustion alert?

When my wife and i arrive sometimes the presence is delayed and by the time we open one of the doors an intrusion is detected and the siren goes off.

How can i avoid from happening at all and if that isnt possible, id deally like to run a routine i have called disarm?

Thanks in advance

I did it by creating a virtual switch and having ST turn it on. Then I have a piston that turns all lights on (when that switch is on), waits 20 minutes, turns them all off. You can start with a wait, then do whatever you want. Maybe use webCoRE? :smiley:

Can someone tell me why this global variable doesn’t get updated?
The one I’m referring to is @TimeOut.

It should be getting set to 480, and according to the logging the task runs, but the global never gets updated.