# Rule Machine Version 1.9 Released

**URL:** <https://community.smartthings.com/t/rule-machine-version-1-9-released/43204>\
**Category:** Community Created SmartApps\
**Created:** [March 24, 2016, 9:33pm UTC](https://community.smartthings.com/t/rule-machine-version-1-9-released/43204 "2016-03-24T21:33:41Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![bravenel](https://yyz2.discourse-cdn.com/smartthings/user_avatar/community.smartthings.com/bravenel/32/13223_2.png) [@bravenel](https://community.smartthings.com/u/bravenel)\
**Post date:** [March 24, 2016, 9:33pm UTC](https://community.smartthings.com/t/rule-machine-version-1-9-released/43204/1 "2016-03-24T21:33:41Z")

</div>

# Rule Machine Version 1.9 Released

With this release comes a new and powerful scheduling feature, a new Trigger Event called Periodic.

Release Notes:

- Added Periodic Trigger Event
- Added option to disable logging from a Rule
- Bug fixes for ZWN-SC7 button controller

## Periodic

The Periodic feature brings the power of CRON scheduling to Rule Machine. There are many different kinds of periodic schedules you can create:

> - Minutes  
> Every N minutes  
> Each selected minute

> - Hourly  
> Every N hours, starting at a selected time  
> Each selected hour, at a selected minute after the hour

> - Daily  
> Every N days  
> Every weekday  
> Each selected day of the month  
> – At a selected time

> - Weekly  
> Each selected day of the week  
> – At a selected time

> - Monthly  
> On a selected day of every N months  
> On a selected day of selected months  
> On a selected day of the week in a selected week of the month of every N months  
> – At a selected time

SmartThings has recently rolled out their [new scheduling system](https://community.smartthings.com/t/new-scheduler-codename-ticker-being-rolled-out/42897). It’s seems appropriate to commemorate that with something that uses it extensively.

For this update you should update both Rule Machine and Rule:

Rule Machine github: [https://github.com/bravenel/Rule-Trigger/blob/master/smartapps/bravenel/rule-machine.src/rule-machine.groovy](https://github.com/bravenel/Rule-Trigger/blob/master/smartapps/bravenel/rule-machine.src/rule-machine.groovy). Save and Publish for me.

Rule github: [https://github.com/bravenel/Rule-Trigger/blob/master/smartapps/bravenel/rule.src/rule.groovy](https://github.com/bravenel/Rule-Trigger/blob/master/smartapps/bravenel/rule.src/rule.groovy). Save and Publish for me.

---

<div class="post-metadata">

**Author:** ![bravenel](https://yyz2.discourse-cdn.com/smartthings/user_avatar/community.smartthings.com/bravenel/32/13223_2.png) [@bravenel](https://community.smartthings.com/u/bravenel)\
**Post date:** [March 24, 2016, 9:33pm UTC](https://community.smartthings.com/t/rule-machine-version-1-9-released/43204/2 "2016-03-24T21:33:58Z")

</div>

Screen Shots:

 ![](https://global.discourse-cdn.com/smartthings/original/3X/7/4/74a3eedf17bd09640c9af85aad7048c0a9c0ef60.jpeg) ![](https://global.discourse-cdn.com/smartthings/original/3X/2/b/2b9616de228b0e4d67c44fce696398492ca3ded5.jpeg)

 ![](https://global.discourse-cdn.com/smartthings/original/3X/7/a/7a9c311777ba07da02feec10d01f2e2b6f2851a3.jpeg) ![](https://global.discourse-cdn.com/smartthings/original/3X/6/2/62f3a65db4c9d20d3a57254706f56b14c51c9456.jpeg)

 ![](https://global.discourse-cdn.com/smartthings/original/3X/0/6/06156c8fed2fd8f903e6b45baaf8830142c39915.jpeg) ![](https://global.discourse-cdn.com/smartthings/original/3X/e/2/e24f5c226d30574d2851072923e62d7a388b6c93.jpeg)

 ![](https://global.discourse-cdn.com/smartthings/original/3X/f/f/ffe2ddc48e72a1b98166ed0528e4850ccf8228d9.jpeg) ![](https://global.discourse-cdn.com/smartthings/original/3X/d/9/d9b867550ca616a6446c79a9be3b12bdbfc8fb6e.jpeg)

---

<div class="post-metadata">

**Author:** ![bamarayne](https://yyz2.discourse-cdn.com/smartthings/user_avatar/community.smartthings.com/bamarayne/32/18206_2.png) [@bamarayne](https://community.smartthings.com/u/bamarayne)\
**Post date:** [March 24, 2016, 9:37pm UTC](https://community.smartthings.com/t/rule-machine-version-1-9-released/43204/3 "2016-03-24T21:37:16Z")

</div>

Woohooo! ! ! You just made my day! ! ! This is awesome and totally changes how I do things in RM! Thank you Bruce!

---

<div class="post-metadata">

**Author:** ![diehllane](https://yyz2.discourse-cdn.com/smartthings/user_avatar/community.smartthings.com/diehllane/32/22571_2.png) [@diehllane](https://community.smartthings.com/u/diehllane)\
**Post date:** [March 24, 2016, 9:42pm UTC](https://community.smartthings.com/t/rule-machine-version-1-9-released/43204/4 "2016-03-24T21:42:55Z")

</div>

This CRON scheduling will be nice. Hoping it can replace some of my IFTTT scheduling.

---

<div class="post-metadata">

**Author:** ![bravenel](https://yyz2.discourse-cdn.com/smartthings/user_avatar/community.smartthings.com/bravenel/32/13223_2.png) [@bravenel](https://community.smartthings.com/u/bravenel)\
**Post date:** [March 24, 2016, 9:43pm UTC](https://community.smartthings.com/t/rule-machine-version-1-9-released/43204/5 "2016-03-24T21:43:01Z")

</div>

The documentation for scheduling recurring events says not to use chained `runIn()`s, but to use cron scheduling instead. When you create a loop using a virtual switch or private Boolean, you’re using chained `runIn()`s. By using Periodic, you’ll be using cron scheduling.

The shortest time period is one minute.

---

<div class="post-metadata">

**Author:** ![bamarayne](https://yyz2.discourse-cdn.com/smartthings/user_avatar/community.smartthings.com/bamarayne/32/18206_2.png) [@bamarayne](https://community.smartthings.com/u/bamarayne)\
**Post date:** [March 24, 2016, 9:45pm UTC](https://community.smartthings.com/t/rule-machine-version-1-9-released/43204/6 "2016-03-24T21:45:56Z")

</div>

> [@bravenel](#):
>
> The shortest time period is one minute

If I understand the release notes on the new scheduler, using a chained RunIn() will be automatically rescheduled.

I like this update as we can now schedule things more reliably. It definitely opens up RM to a new level of power.

The first thing I see changing is how I’ve programmed my thermostats. I can work in more seasonal changes to them instead of going day by day.

---

<div class="post-metadata">

**Author:** ![bravenel](https://yyz2.discourse-cdn.com/smartthings/user_avatar/community.smartthings.com/bravenel/32/13223_2.png) [@bravenel](https://community.smartthings.com/u/bravenel)\
**Post date:** [March 24, 2016, 9:49pm UTC](https://community.smartthings.com/t/rule-machine-version-1-9-released/43204/7 "2016-03-24T21:49:07Z")

</div>

> [@bamarayne](#):
>
> If I understand the release notes on the new scheduler, using a chained RunIn() will be automatically rescheduled.
> 
> I like this update as we can now schedule things more reliably. It definitely opens up RM to a new level of power.

Actually, no. They can’t change chained RunIn() into schedules. And no, RM update does not mean the schedules will be more reliable.

If the schedules are more reliable, it’s because of what SmartThings has done.

---

<div class="post-metadata">

**Author:** ![bravenel](https://yyz2.discourse-cdn.com/smartthings/user_avatar/community.smartthings.com/bravenel/32/13223_2.png) [@bravenel](https://community.smartthings.com/u/bravenel)\
**Post date:** [March 24, 2016, 9:50pm UTC](https://community.smartthings.com/t/rule-machine-version-1-9-released/43204/8 "2016-03-24T21:50:16Z")

</div>

> [@bamarayne](#):
>
> Woohooo! ! ! You just made my day! ! !

Plus, thanks to your nagging, I put in the option to turn off logging. 😀 It’s at the bottom of More Options.

---

<div class="post-metadata">

**Author:** ![SBDOBRESCU](https://yyz2.discourse-cdn.com/smartthings/user_avatar/community.smartthings.com/sbdobrescu/32/30067_2.png) [@SBDOBRESCU](https://community.smartthings.com/u/SBDOBRESCU)\
**Post date:** [March 24, 2016, 9:55pm UTC](https://community.smartthings.com/t/rule-machine-version-1-9-released/43204/9 "2016-03-24T21:55:47Z")

</div>

I think we need to start paying @slagle to make sure your garage door opens ‘accidentally’ because every time something pisses you off, the Rule becomes more powerful! Nice job! Thank you…

---

<div class="post-metadata">

**Author:** ![bravenel](https://yyz2.discourse-cdn.com/smartthings/user_avatar/community.smartthings.com/bravenel/32/13223_2.png) [@bravenel](https://community.smartthings.com/u/bravenel)\
**Post date:** [March 24, 2016, 9:58pm UTC](https://community.smartthings.com/t/rule-machine-version-1-9-released/43204/10 "2016-03-24T21:58:56Z")

</div>

Actually, Mr. Slagle spent hours holding my hand this morning while I chased down what turned out to be my own bug. I feel really bad about wasting his time. I found it eventually, and all is good. Thanks Tim!! @slagle

---

<div class="post-metadata">

**Author:** ![bravenel](https://yyz2.discourse-cdn.com/smartthings/user_avatar/community.smartthings.com/bravenel/32/13223_2.png) [@bravenel](https://community.smartthings.com/u/bravenel)\
**Post date:** [March 24, 2016, 10:03pm UTC](https://community.smartthings.com/t/rule-machine-version-1-9-released/43204/11 "2016-03-24T22:03:27Z")

</div>

You can actually use this to create a Trigger that will remind you of your Mom’s birthday every year with a SMS message. You can also do the things people wanted like enabling their holiday lighting rules automatically, and then disabling them automatically, on a schedule you set up.

---

<div class="post-metadata">

**Author:** ![diehllane](https://yyz2.discourse-cdn.com/smartthings/user_avatar/community.smartthings.com/diehllane/32/22571_2.png) [@diehllane](https://community.smartthings.com/u/diehllane)\
**Post date:** [March 24, 2016, 10:04pm UTC](https://community.smartthings.com/t/rule-machine-version-1-9-released/43204/12 "2016-03-24T22:04:40Z")

</div>

Oh man… I can imagine the excuses now.

“Mom, I meant to call you on your birthday but the SmartThings scheduler went wonky again and I didn’t get the text”

---

<div class="post-metadata">

**Author:** ![michaelahess](https://yyz2.discourse-cdn.com/smartthings/user_avatar/community.smartthings.com/michaelahess/32/27733_2.png) [@michaelahess](https://community.smartthings.com/u/michaelahess)\
**Post date:** [March 24, 2016, 10:04pm UTC](https://community.smartthings.com/t/rule-machine-version-1-9-released/43204/13 "2016-03-24T22:04:52Z")

</div>

So awesome! Now we’ll collectively break the new scheduler with this!

---

<div class="post-metadata">

**Author:** ![ashutosh1982](https://yyz2.discourse-cdn.com/smartthings/user_avatar/community.smartthings.com/ashutosh1982/32/15210_2.png) [@ashutosh1982](https://community.smartthings.com/u/ashutosh1982)\
**Post date:** [March 24, 2016, 10:04pm UTC](https://community.smartthings.com/t/rule-machine-version-1-9-released/43204/14 "2016-03-24T22:04:53Z")

</div>

Awesome!!! Thanks for bringing this feature …This is awesome!

This definitely addresses what I was looking for… And Bruce delivered yet once again!!!

 ![](https://global.discourse-cdn.com/smartthings/original/3X/5/8/582777c6cdf65e8c1dd4fea375affbda672b9e11.png)

---

<div class="post-metadata">

**Author:** ![dshokouhi](https://avatars.discourse-cdn.com/v4/letter/d/48db29/32.png) [@dshokouhi](https://community.smartthings.com/u/dshokouhi)\
**Post date:** [March 24, 2016, 10:21pm UTC](https://community.smartthings.com/t/rule-machine-version-1-9-released/43204/15 "2016-03-24T22:21:21Z")

</div>

Wow amazing! Now I can make my own color loop for my Osram lights that don’t support it yet! I have a rule set to run every minute and set them to a random color and it works pretty well so far 🙂 would be nice to make it more frequent but it works for now! Thanks!!!

---

<div class="post-metadata">

**Author:** ![bravenel](https://yyz2.discourse-cdn.com/smartthings/user_avatar/community.smartthings.com/bravenel/32/13223_2.png) [@bravenel](https://community.smartthings.com/u/bravenel)\
**Post date:** [March 24, 2016, 10:22pm UTC](https://community.smartthings.com/t/rule-machine-version-1-9-released/43204/16 "2016-03-24T22:22:40Z")

</div>

Thanks, so it WAS you who suggested it! I was going to go search to find that post. 😀

It was a fair amount of work. Frankly, I came to it backasswards, as usual. I was messing around with cron, which I never use, and saw these cool sites that show how cron can do cool things, like [CronMaker](http://www.cronmaker.com). ST uses CronMaker to test all of their cron schedules for validity, or even to create them in the first place. I used it extensively to test as I worked on it, and to see how it’s supposed to work.

At some point along the way, the light bulb went on, that this was Periodic, and cron is the ugly Unix command that needs a UI to present the power to the user. RM brings more than CronMaker will create, with the Select Minute, Hour, Day, Month stuff, thanks to another website that showed how that stuff works.

---

<div class="post-metadata">

**Author:** ![eibyer](https://yyz2.discourse-cdn.com/smartthings/user_avatar/community.smartthings.com/eibyer/32/27702_2.png) [@eibyer](https://community.smartthings.com/u/eibyer)\
**Post date:** [March 24, 2016, 10:26pm UTC](https://community.smartthings.com/t/rule-machine-version-1-9-released/43204/17 "2016-03-24T22:26:32Z")

</div>

Very nice! Thank you, this will be a distracting release because I’ll be thinking of where I can use this instead of listening/interacting with people.

---

<div class="post-metadata">

**Author:** ![bravenel](https://yyz2.discourse-cdn.com/smartthings/user_avatar/community.smartthings.com/bravenel/32/13223_2.png) [@bravenel](https://community.smartthings.com/u/bravenel)\
**Post date:** [March 24, 2016, 10:28pm UTC](https://community.smartthings.com/t/rule-machine-version-1-9-released/43204/18 "2016-03-24T22:28:13Z")

</div>

I understand. I think my wife could say something about that wrt me working on RM. 😀

---

<div class="post-metadata">

**Author:** ![SBDOBRESCU](https://yyz2.discourse-cdn.com/smartthings/user_avatar/community.smartthings.com/sbdobrescu/32/30067_2.png) [@SBDOBRESCU](https://community.smartthings.com/u/SBDOBRESCU)\
**Post date:** [March 24, 2016, 10:44pm UTC](https://community.smartthings.com/t/rule-machine-version-1-9-released/43204/19 "2016-03-24T22:44:58Z")

</div>

Hey Bruce, I use Sonos reminders extensively, but one thing I was never able to do, is setting a reminder for every other week on Thursday. Is there a way to do it using the periodic? Maybe a future enhancement of every n weeks?!

---

<div class="post-metadata">

**Author:** ![bravenel](https://yyz2.discourse-cdn.com/smartthings/user_avatar/community.smartthings.com/bravenel/32/13223_2.png) [@bravenel](https://community.smartthings.com/u/bravenel)\
**Post date:** [March 24, 2016, 11:37pm UTC](https://community.smartthings.com/t/rule-machine-version-1-9-released/43204/20 "2016-03-24T23:37:25Z")

</div>

Cron doesn’t support that. There are actually many things you can’t do with cron directly, such as every 90 minutes. For some of these it just takes two triggers, e.g., one for 1st week of every month, and another for third week.

But, you can only have one Periodic per Trigger. The second trigger could just run the first one’s actions, and you’d be all set.

[Next page](https://community.smartthings.com/t/rule-machine-version-1-9-released/43204.md?page=2)
