Smart Alarm Clock?

Problem #1...that doesn't exist. :slight_smile:

Global variables cannot be a "time" (yet).

1 Like

I have been doing this in my own way, for months. Works great.

How exactly?

As @aaiyar stated this isn't really possible yet because GV can't be of type time. But, if the alarms you would want to set are pretty much pre-determined you could do something similar to this. It is kind of kludgy but it should work. If you had 5 or 10 pre-determined time slots it would be feasible. Anything more than that would be unmanageable, but possible. You could enter the time on the dashboard and have stuff happen at that time. If this is an option I'll post my thoughts. Again, it is really kludgy.

1 Like

I don't see your rule(s), but it sounds very similar to what I do.

I have a Rule with actions only. This rule is triggered by another rule at specified times based on 5 different virtual switches.

I don't have a rule yet for this but CMagnuson got me thinking. If you created a GV with a connector you could set the GV via the dashboard with a string or decimal, it really wouldn't matter. You could have a rule that is triggered by this variable changing. Within that rule you could have a series of if-then statements that would wait for events based on the value of the GV.

If GV = 0930 wait for event 09:30am. Like I said it is kludgy. It would take some playing around but it should work.

1 Like

I do something similar with GVs for alarm hour and alarm minute that I can adjust via dashboard. I then calculate that into minutes past midnight and compare it every minute to current minutes past midnight as the trigger. It works but it's very "Heath Robinson".

But I would hold fire In trying anything like it if I were you, I am pretty sure Bruce is working on a proper solution for time GVs.

1 Like

I had a similar thought but didn't want to deal with the overhead of having to constantly check it and figure out if this was set prior to or after midnight for the next morning. Bruce has mentioned time for GV's but until then we have to work with what we have.

That's a good idea.

1 Like

You could continue doing what your doing with multiple rules and just pause/unpause those rules based on the GV setting.

The "Start Morning" variable is a String Variable Connector with a tile on the dashboard.
It is not perfict but works for me.
Always interested in a better way.
Input amounts to "time past midnight" and has to be set before midnight.
I did have a version that would work anytime with any time, but I blamed it on crashing the hub, and reverted to this simpler rule.

1 Like

I appreciate all the thoughts, but unfortunately no one seems to be able to provide an idea that meets the requirements I set. When people use words like "kludgy" that is synonymous with "my wife will hate it and refuse to use it." That makes it a bad solution. I think I'll keep doing some more research into off the shelf options. I already found a few that seem promising but need more research. Thanks.

2 Likes

I'd like to see something like this too, but I'm OK with cooling my jets until I can set a time global variable from the dashboard. Then all sorts of possibilities would open up.

Time variables will definitely help. Right now I'm looking at a product called BEDDI https://www.wittidesign.com/ which lets you call an HTTP endpoint when an alarm triggers, at least that is what their support is telling me. I'm still doing more research. $99 is a bit to spend when I'm not 100% sure it will work.

You can definitely kludge a time GV on the dashboard. It requires a bunch of back end computations in RM4. It's not difficult, just clunky. I do it to maintain timers on when the kids need to take the dogs outside again, when the vacuum will run again, and a few other such things.

Don't get me wrong -- life will get a lot better once there is a real Time GV.

How many different times do you need? You could pretty easily create a dashboard with virtual switches for preset alarm times.

@dman2306 HE 2.1.8, which was just released, now supports time variables. This means you can now set a trigger based on a variable which was set from a dashboard tile. You can put a 'Variable Time' tile on a dashboard and enter a time to trigger an event. I just tested it and it worked as I expected.

1 Like

Yeah I’ve been playing with it and it’s definitely better but that’s not going to meet the requirements I stated. How does that help me integrate with an Apple Watch to vibrate when it hits a certain time?

I don't own any Apple projects so I can't help. I'm sure others may have ideas.

I didn't realize the watch vibrating was a requirement. You said ideally, this isn't ideal but it gets you part of the way there.