The final part of the Home Automation prototype is developed : The scheduler. The previous part was about rules that trigger when a certain condition was met. E.g. a sensor goes above a certain value. Where rules operate on events which are not predicatable, the scheduler allows to planify events on specific moments. So the two activities are complementary.
Actually, the design of the scheduler was something I developed more than a year ago. It was the very first idea I had for a user-friendly way to plan things, but before I could add it here to the prototype I had to complete first all other parts : manage and use devices, the floorplan, charts and rules. And so finally it’s here !
The big challenge with a scheduler is to keep it simple. A text-based representation of scheduled items would work, but it requires some imagination of the user to understand the sequence of events. Certainly when there are a lot of events planned. I've seen implementations where users have to enter IF THEN ELSE statements, but that's clearly invented by computer scientists, not by normal users (no offence meant, I'm a computer scientists as well
The DHS implementation uses a graphical representation of a week. A timeline is presented for each day, and you can schedule events on the timeline in the form of little flags. Changing the schedule is not more complex than moving the flags over the timeline.
Instead of a continuous calendar which must be maintained I have chosen for a number of week “templates”, which I call a Schedule. You can define as many schedules as you like : for a week where you all work, one where you work partly at home, another one for the holidays etc… And then you activate one of the schedules (only one schedule can be active at a given time).
Once the schedule is active, events will execute as they are put on the timelines. There is no limit on the number of schedules, and you can change them on the fly. What I really like about it is that you immediately can see what is going to happen, thanks to the graphical representation of events. No need to read lines, scroll through text or whatever.
I didn’t plan to add the schedules to the prototype, but I was requested to do so. Some finetuning is still needed for the schedule, but now the prototype is finished, and I will transform everything to a DHS module. Special thanks to Jorge, Steve and Oleg for testing and their feedback. If anybody else would still like to give it a try, please do so. You still have some opportunity to influence the development.http://www.digitalhomeserver.net/homeautomation.zip
And now I urgently must release my Scanning and Archiving module for DHS, which is ready since several weeks, but I still have to finish up the documentation. So you will hear soon from me again.