Improving sunscreen flows

I have a question on how to build efficient flows, hopefully someone could give me some insight on this.

I live in a large apartment with windows facing south and south-west. All windows come with screens that I can control with Fibaro roller shutters. I have automated all of this, but I’m not satisfied on when my screens are closing based on the position of the sun and the light into my apartment. Specifically on the 5 windows on the south side. Right now I have these two flows:

This is for one of the screens (my office, duh). I set them down only if the power generation of my solar panels is above a certain level and the luminance indoor is above a certain level or outside it is above a certain level. These levels seem to be good, but the problem is that they don’t go up at a time I would like them. If you look at the graph of the outdoor luminance, the luminance rises in the morning (as expected) and possibly even reflection that drives it up to the 5k (now you know why I need screens) and further into the morning the levels go down. However, the luminance level stays above a value at which I would set the screens up/down, this is probably because of the fact that the sun comes in at the side of the sensor. This is fine, but that means that if I would set the screens up, sun wouldn’t come into the apartment.

I was thinking to solve this by having a higher value after solar noon (using the sun events app), because inherently this would mean the sun is coming in through my windows on the south-west. The downside is that this would complicate my flows even more (and I have 4*2 flows more like the above for the other south facing screens). I was hoping that someone perhaps has an advice on what I could improve to make my flows better on this aspect.

I think the easiest solution would be to use the Sun Events app. I use the app for the same use case.
With the Sun Events app, the position of the sun (azimuth) can be included. So for opening the sun screens, when the luminance is still high, but the sun is no longer shining into the windows, another flow is needed:

When…
– Azimuth changed
And…
– Azimuth ist greater than xxx °
– …
Then…
– Set position
– Set logic variable
– …

For the flow to close the sun screens, the azimuth can be added to the conditions.

To find out the needed azimuth values, an app like Sun Surveyer can be helpful.

Thanl you for the sun surveyer tip. I just bought it and based on a quick look this is exactly what I need to determine the sun position.

I still have to see how to handle this in flows. This is a balance between flexibility (every screen separate) like I have now or more generic. Perhaps I can put some vars in a logic and use those in a flows instead of specifying every condition separately.