Timer and scheduler add on?

Is there an add on for easy scheduling? I would like to schedule my dishwasher and clothes dryer with something simpler than crontab.

In recent versions of OH rules can be triggered at the time (or time and day) indicated by the state of a DateTime item. That item, in turn, can be set in any number of easy UI ways. There are already marketplace widgets that allow you to set datetime items and many other examples here on the forums if you want to create your own.

Beyond that, there are a few more complex examples and widgets available such as this one:

Not easy, no. Crontab is easier, imho, to get working.

One would expect a timeline event scheduling widget would be the first and most requested feature in a home automation system, but apparently not so? I find OpenHAB rules excellent for “fire and forget” type periodical scheduling. However, I just want to start my clothes drier at 4 am in the morning rules are not quite as “swipe and click” as I would like.

We do get asked about it, but I don’t think it’s a high priority for most users. If it was, it would already exist.

For me, home automation is less about interacting with the system for one-off requests and more about automating highly repeatable tasks. In this case, I would probably define a set of times that I typically want the dishwasher to start (e.g., 2am, 4am, 10pm, etc.) and make them available in a UI to assign to a string item, which I’d use as a condition in a rule. I don’t need to define the exact hour/minute/second when it starts, so I’m reducing the options in order to reduce how much I have to intervene.

More likely, I’d just decide on one time that always works and then have a switch item that serves as the conditional check. Then I’d never have to give it any thought at all: I toggle the switch and the dishwasher runs at 4am. This only works for things that should happen 99% of the time, but that’s how I’ve designed my system.

Google Assistant has the ability to schedule actions in advance, so you might be able to say, “schedule my dishwasher to start at 4am”. I can’t tell though, because most of my devices are exposed to GA as switches and outlets. They’ve prevented those item types from advance scheduling for safety reasons.

The use case is that I want to schedule the drier to the cheapest electricity. Unfortunately the electricity price varies from day to day. Also I don’t need to run the drier every night, that’s why I’s like a simple way to set it every day.

So the timing varies day to day? I would still think that there’s a common time when it’s always at its lowest, no?

There have been some discussions about monitoring electricity prices to start washing machines at the optimal times for reducing electricity costs. Perhaps that’s possible in your area. What’s really great about that approach is that you don’t have to think about it at all.

That’s what the conditional check is for. You run the rule on cron, and then check the condition before starting the dishwasher. If the condition fails, don’t run the dishwasher.

1 Like

To elaborate a bit on what @rpwong is talking about.

  1. Let’s assume you have a way to get the time(s) of the cheapest power into an OH Item. There are lots of tutorials for interacting with lots of different APIs in many parts of the world on the forum.

  2. Once a day (or how ever often as new rates are published) pull the new schedule and find the time where the power is at it’s cheapest.

  3. Set that time to a DateTime Item.

  4. Create a rule that uses a Time is state of a DateTime Item trigger and uses the Item from 3. This rule runs the drier, as mentioned by @JustinG.

  5. You can use an additional Switch Item to indicate whether the drier even needs to run. You could add a condition to 4 to only run the drier when that Switch is ON.

Once set up, the way you would use it is you’d load the drier, flip the Switch and the rule will start the drier when the power is cheapest. Minimal interaction from you.

But even if you just want to set a time, the Widget that @JustinG mentions is very easy to use.

or if you want to date too

Set this as the “default list Item widget” and you can set the time/datetime from the Overview Pages. You really only need something like the Timeline if you want to schedule something out into the future (e.g. HVAC target temps, irrigation, etc.) and want to seem the already scheduled stuff while you are doing it. In this case it’s kind of one off/adhoc scheduling so using the DateTime trigger fits the bill nicely.

And one advantage over crontab is you don’t have to be an admin to change the time. It’s an Item.


Yes that is the case. We use what we call spot-price electricity. The prices are announced at about 14:00 local time for the next day. Price peaks usually but not always happen at 11:00 and 20:00 but the low price spots change from day to day as does the price. I am using Control a water heater and ground source heat pump based on cheap hours of spot priced electricity to control my heating system and that is how I started thinking about also steering other home appliances to the cheap electricity hours.

Thanks to this discussion it dawned to me I could use as datetime item to indicate whether or not I want the drier to run and then let my heat pump control also start the drier at the absolute cheapest hours. This still needs a bit of thinking, but I am getting closer and also learning a lot at the same time.

1 Like

That’s really interesting. The ones I’ve heard about are usually defined periods of time.

I’m lucky to live in an area (Western Canada) where we have a surplus of hydro-electric power. Saying that, BC Hydro has proposed a new optional rate for residential customers.

The new rate we’ve applied for is an optional time-use-rate for residential customers.

With this rate, you’ll still be billed for your total electricity use in a billing period at the existing two-tier residential rate. Then, you’ll get a credit of 5 cents per kilowatt hour (kWh) for electricity used overnight (11 p.m. to 7 a.m.) and you’ll be charged an additional 5 cents per kWh for electricity used during the on-peak peak period (4 to 9 p.m.). No credit or additional charge will be applied to usage during the off-peak period (7 a.m. to 4 p.m. and 9 to 11 p.m.)

This proposed rate could help you save on electricity costs if you shift some of your usage to off-peak periods. It’s particularly beneficial to those who charge an EV at home and can charge overnight. You could also save money by shifting other household usage outside of the peak period, such as laundry and dishwashing.

I like the idea of this, but it doesn’t make sense for me to opt in. I live in a condo and don’t have an EV, so it would be difficult for me to offset the higher 4-9pm costs. I usually run my dishwasher at night, but my washer/dryer would make too much noise.

I’ll be curious to follow the new thread you started for energy-cost savings.

Here you can buy electricity at fixed price or variable spot price. This night the spot price will be zero from 2 to 7 in the morning, as you can see in the picture below. The blue shaded area is the hourly electricity price. The yellow bar is my heat pump control signal. The language used in the graph is Finnish.

Transmission is charged separately, and that has a fixed price, unfortunately.