CoRE and Piston Rules Engine, first design steps

There is no readme yet. This is an alpha version, things change as we go. When we hit beta, it would really be nice if someone offered to write one… :slight_smile:

The “Execute on piston state change only” means just what it says. Depending on which piston mode you choose, their state is calculated differently (see the table below). They maintain this state based on the events that happen.

For example, IF “Temperature is over 70°F” THEN {do something}… When temperature starts at 60, your piston will be false. As temperature goes up, events come in that show higher temperatures. As it goes over 70 degrees, your piston now becomes true. As temperature keeps going up, piston gets reevaluated on each, but stays true. If you enable that option, you only execute the action the first time the temperature reached over 70 degrees, but not on any subsequent reevaluations, because the piston state does not change, it stays true. If you don’t enable that, every single reevaluation of the piston will execute that action. So if you’re turning the light on, you should only do it when the piston state changes. If you’re changing the color of a light based on temperature, you need to run it every time, not just on state changes. Got it?

3 Likes