iCalendar to control rollershutter

I want to control my rollershutters via iCalendar binding. What works nicely are UP and DOWN commands like this:

BEGIN:Rollo_EG_Wohnen_Ost_Level:DOWN

This also generates these entries in events.log

2021-09-30 19:25:00.070 [INFO ] [openhab.event.ItemCommandEvent      ] - Item 'Rollo_EG_Wohnen_Ost_Level' received command DOWN
2021-09-30 19:25:00.072 [INFO ] [penhab.event.ItemStatePredictedEvent] - Item 'Rollo_EG_Wohnen_Ost_Level' predicted to become DOWN
2021-09-30 19:25:00.075 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'Rollo_EG_Wohnen_Ost_Level' changed from 0 to 100

What does not work is to pass an actual level that the item should move to such as

BEGIN:Rollo_DG_Schlafen_Level:76

I would expect the rollershutter to move to position 76% closed. But instead simply nothing happens. No entry in openhab.log is generated, events.log shows only the following line. The expected “predicted to become” and “changed from … to …” are missing:

2021-10-04 06:45:00.096 [INFO ] [openhab.event.ItemCommandEvent      ] - Item 'Rollo_DG_Schlafen_Level' received command 76

Any idea what I need to do differently to move the rollershutter to a specific level through iCalendar binding?

Hi Rene,

you need to put a unit behind the number value, in your case %:

BEGIN:Rollo_DG_Schlafen_Level:76%

Then it should work.

1 Like

Thanks Jan, I will try this and let you know if it works.

Thank you, Jan! That’s the solution, now it works.

I don’t know who can edit the documentation of iCalendar binding on the OpenHAB website but it would be helpful to make this more explicit because it works different than a sendCommand in a rule for example. So pointing out you need to add the unit of measurement in the calendar statement plus more examples (there is currently one with temperature but honestly I overlooked it before).