Piston for water re-circulation pump


Sounds like it might work…
But pausing and resuming pistons might fail some times…

Best to test:)

But I believe your best bet will be using variables. (I’m not a coder, so not sure if there is a better way)
Let us know when ready for variables:)


I looked at the variables and did really understand all of them that are listed. I somehow need a variable that after the motion starts the pump, the entire piston chills for 5 minutes then turns off the pump and then chills again for about 20 min.


Here is a draft with a globalvariable.
2 piston system. (though could be done in a single piston i guess)
ps : if anybody wants to jump in and make it better pls do so, I’d like to learn better.

Piston 1 (Controls the global variable)

If motion sensors changes to active 
Set @heater = TRUE

Piston 2 (Controls the heater IF the variable CHANGES to TRUE)

IF @heater changes to TRUE
Start the PUMP
Wait 20 minutes
Stop the pump
Set global variable to FALSE

Since the globalvariable will be TRUE for 20 minutes, even if the motion sensors triggered again, nothing will change.
After 20 minutes variable will be FALSE and when motion sensor triggered again it will turn to TRUE and the whole rutine will start again.


I’ll try something like that. The two position system doesn’t work. Piston 1 starts the pump just fine, starts Piston 2 and pauses itself. However, Piston 2 never pauses and starts Piston 1 again. So, great theory, but doesn’t work.

I am relatively new to this. Is there is a way to “cage” executions? Almost like two positions in one.


I often recommend the exact opposite…
Splitting up one complex piston into multiple pistons for streamlining.


I can’t get positions to pause and resume one another. Is there a secret to that?


Any piston can pause or resume any other piston…
Just remember that paused piston are completely dumb & useless.

Also, if PistonA relies on PistonB, I would avoid trying to make PistonB rely on PistonA…
It is too easy for that to get out of sync.

Having only one in charge is preferred.


Does this look correct?


looks like it:)


Piston #1 gives a message “This piston does not subscribe to any events. Unless executed by other means, it will never run on its own.”

The piston never starts anything. What am I missing?


I cannot get the sensors to not re-trigger the piston. Every time the sensors see motion, the piston starts over. I just need the first motion to trigger timers that cannot be restarted until the end, even if the sensors see motion during the piston.