"One Click"/"Button" To Reset Time Of Day Parameter in Good Morning! Routine?

I have the “Good Morning!” routine set up and running properly on my Android device, programmed to start at a particular “Time of day” (by default 6:30 AM).

Is there some way that I can adjust this Time of Day value without going through the process of modifying the Time of day value in the routine (which is buried several levels deep in the SmartApp)? Ideally, something like a ‘button’, either on a widget or within the Smart Home Monitor app (for instance the Dashboard or even on the Routines tab), which you could touch and be prompted to enter a new value for the Time of day parameter in the “Good Morning!” routine.

Not really. The better approach would be to setup some other sensor to trigger the routine. I.e. when bedroom door opens between 5am-7am, when motion detected in master bedroom between 5 am-7am, etc.

Yeah, why do you want to adjust it? To wake you up at different times? Give us your end goal, and we can whip up some ideas of how to do this awesome like. :slight_smile:

For instance, I use the “when things start happening” with a few trusted motion sensors. It works like a champ, one of my routines that has never failed… anti-jinx juju added here

Thanks! Unfortunately, I need to trigger the routine at least 30 minutes before actually getting up and about, as one of the things it does it turn on the espresso machine which needs to be thoroughly warmed up before using. The standard 6:30 AM start time works fine for the vast majority of situations, so I guess I’ll just have to remember to reset the “Time of day” parameter for those exception days the day before (and then remember to set it back again).

Hopefully this ‘adjust parameters on the fly’ function will be added to the ST toolkit sometime. I can see plenty of potential uses for such a function.

I was thinking of CoRE (a community rule engine), but I think the variable you would use would be more complicated to set in any case.

Is there any rule to your exception days?

On your exception days, are you getting up earlier or later?

If earlier, you can leave your normal 6:30 time alone. Set up a virtual switch that also triggers your routine. Use IFTTT to turn that switch on when it receives a text message. Use an app like “Schedule SMS” (google play store) to send you a text at a specific time on your exception days. Or directly set up a time trigger recipe in IFTTT that turns that virtual switch on at whatever time, and enable/disable the recipe as needed.

If later, you could set up several recipes in IFTTT that turn the virtual switch on at different times (like one at 5:30, one at 6:30, one at 7:30, etc), then just enable or disable the appropriate one for your day.

You could also use IFTTT to turn on the virtual switch based on Google calendar events, then set up your desired wake times for the week in your calendar and let IFTTT do the rest.

2 Likes

Step 1. Create a virtual dimmer (maybe @Mike_Maxwell’s uDTH can help?)
Step 2. Create a CoRE piston with a time trigger at the earliest time you ever want this to run
Step 3. Calculate the number of minutes between the latest time and the earliest time. Divide that by 100. Say, 5:00 - 8:00 should mean 180/100 = 1.8

Create a piston where on time trigger at 5am (earliest time). When it triggers, save the level attribute into a variable, let’s call it delay. Then Set variable delay (as number) to delay * 1.8. Level is between 0-100, so we’re now multiplying it by 1.8, making it 0-180 minutes (as per my example above). Now do a Wait (variable) {delay} minutes, followed by your action. All you need to do now is to adjust the level on that virtual dimmer and things will be delayed by 0-180 minutes, depending on where you place the level.

3 Likes

3 Likes

This is genius!

1 Like

Your method coupled with either an Echo or the Alexa Listens app on his phone, he could use voice control to set the routine trigger time, making it super simple.

Bring Ask Alexa voice macros into the mix too and he can associate times with the percentages, like “Ask smartthings to get started at six AM” would set the virtual dimmer to 33%, “Ask smartthings to get started at seven AM” would set it to 67%, etc (using the 3 hour delay window you gave above).

2 Likes

Great idea! Albeit, one that I will have to do some serious learning and experimenting with as I’m an abject newbie here in the ST world.