CoRE - Get peer assistance here with setting up Pistons

I understand, is there a way around it?
Do you have an example of using the ‘stays’ trigger to save a device into a variable and then call that variable name?

Yes, just explained it at the end of the message. Use the trigger to save the list of matching devices to a variable…

1 Like

I’m not sure how to do that, is it easy?

Same as what I suggested previously.


I have just had a sensor stop working as the battery has gone flat.
I have the app low battery Monitor installed but it didn’t send me a notification.
So let’s try CoRE me thinks.
While I can get it to check and send a notification with a ‘happens at’ I cannot get it to include the devices that report a battery level below my set threshold.
Any ideas anybody?

I know you were asking for CoRe ideas, but this is working really well for me. I get all the notifications I could ever want, and can pick and choose.

Thanks @Cael .
I was aware of this app but didn’t realise it sent notifications.
I will give it a whirl.

Anyone see anything wrong with this and how it should operate?

Is this a test? If I guess the right answer, do I pass?

How about tell us what is doing and what it’s supposed to be doing.

Both @bobbles and @dseg, go to the condition/trigger that contains your device/devices, scroll down past the when true/false and find a section where you can dump the list of matching devices into a variable. Type in a name for the variable, then use it in a notification between { }…

The THEN will be executed when either the first condition is true (door is open) or the ELSE IF is true. Either use a true Else-If piston, or put the THEN portion as individual actions on the first condition (door is open). Also, the door is closed conditions are not needed. You are, after all, on the ELSE IF branch of door is open…

1 Like

Hi @ady624.
I’ve done what you asked but do not see a section where you can dump the devices into a variable.
Edit: Got it. Need expert mode enabled.

1 Like

This look better ?

1 Like

Is there a way to check if a piston exceeded the 20 sec execution limit other than watching live logging?

Got it. Thank you!

Ok, ask if you CoRE fanatics… I need examples of what you’ve done to program your minimotes using CoRE…

Throw them at me!

1 Like

Throw the minimotes at you? You sure?! :wink:

1 Like

I have a laundry room. I have a GE12722 switch on the light, and an Ecolink motion sensor. When I walk into the laundry room, I want the light to go on. If the light has been on for at least 5 minutes and there’s nobody in the room, I want it to go off. (Note this doesn’t mean that it’s been 5 minutes since someone left the room - rather, that after it’s been on for five minutes, if there’s nobody there, it turns off.)

Here’s the piston I wrote:

The problem is that the light doesn’t get turned off automatically. This is actually the second version of the piston - the first one had “Laundry Room Sensor motion is inactive” instead of “Laundry Room Sensor motion changes inactive”.

The first version seemed the most logical to me - light has been on for 5 minutes, and room is empty. But that one also didn’t turn the light off, so I changed it to the second version which you see here. I can understand the second one not working, if my interpretation of how it all works is correct - if the change to “inactive” occurs before the light has been on for 5 minutes, they won’t both be true at the same time.

But I don’t understand why the first version (on for 5 minutes AND motion is inactive) doesn’t do what I expect.

I have two other lights with this scenario that also have problems.

On a related note, I find the CoRE terminology of “stays on for XX minutes” to be confusing, in that it suggests that something will be checked after exactly five minutes. What I’m really looking for is “has been ON for 5 minutes or more”. And maybe that’s what my problem relates to?

Ok, so the way this is set up the five minutes part is useless. The lights will stay on for an hour as long as someone use in there moving around.

So, why not just do this…

 Motion is active
       > turn on light
  Motion is inactive (TOS - cancel on piston change)
       > wait one minute
       > turn off light

This turns the lights on when you go in and of one minute after you leave.

Or, if your laundry room is like mine, the only time someone is in there the door is open. So, I put a contact sensors on mine and when the door open the lights turn on and when the door closes the lights turn off. (Just don’t close the door while in the room)

Well, that’s fine, though. I want the light to go on when someone enters. As long as there’s someone still in there, it can stay on. But if they leave the room and forget to turn it off at the switch, as long as it has been on at least five minutes it should go off as soon as the sensor sees that room is inactive.

Thought about that, but the door’s usually left open.

BTW, I just changed them to “sensor is inactive” and turned them on from my smartphone. If everything is working, they (laundry room, hallway, and stairway) should all go off after five minutes because those areas are all inactive right now. In fact, I just now checked them and they’ve all gone off. So now all are working right. I’d chalk it up to flaky Ecolink sensors except that the hallway one is the Iris sensor and I’ve been having the same problem with that one.

I guess at this point I’ll just keep an eye on them and see if the flakiness occurs again. Thanks for responding.