Since I could not find anything that would meet my requirements, I wrote a Jython script with the following features:
- calendar: specifies the daily schedule that is to be run on a particular day.
- daily schedule: e.g. “workday” “weekend” “vacation”. It defines the rules that are to be run a particular type of day.
- rule: defines the time/trigger and action to be run on which rollershutter.
- shading logic: create a shading model for each rollershutter and then have the script calculate if it is currently sunlit or not. (using the astro binding). Autoclose the rollershutter when window is sunlit.
- weather / sun sensor awareness: include info from weather binding and / or a sun sensor
- master automation ON/OFF switch
- entirely configured through yaml
I created a github repo with the code, installation instructions and a very simple openhab2 config as demo and for testing. https://github.com/schnidrig/openhab2-rollershutters
It is not optimised in any way and there might have been better ways to achieve the same result. But I wanted to have a working solution quickly.
I found it rather difficult to get started with openhab2 and Jython. I guess I’m not the only one, so you may find this script helpful as an example even if rollershutters are not of interest to you.