Automatic blinds / sunscreen control based on sun platform

What was the major change in the updated blueprint? I’m wondering if I should either only use your original or adapt your changes to the one in this topic.

Sorry I don’t think I understand the question correctly.

The one in this topic shared by Stefan and me has the logic for only vertical oriented blinds build in.

The one from my integration works only with the entities from that integration and is used to automate the cover position based on the sensor state. Therefore the added warning.

The blueprints are not the same :wink:

I completely understood they are not the same, I was just wondering if you changed the algorithm or something like that. They are very similar, the one by Stefan just has extra parameters but looks like the algorithm is the same. That’s all I was asking.

The integration is based on the same algorithm, but is extended with more features.
For example it features on top of the existing algorithm:

  • an algorithm for horizontal oriented covers like awnings
  • an algorithm for tilted blinds like venetian blinds
  • an ECO-mode which helps to heat up the house in the winter and to keep the sun out in the summer for all types of previous mentioned blinds
  • a switch to toggle between normal operation and eco mode
  • inputs for weather conditions, presence detection and indoor temperature (used only in the eco mode)
  • auto blueprint updates (although the new import function in HA makes this also a lot easier for the standalone blueprint)

Hello @basbrus , I am coming from your recommendation in the other thread regarding CCA.

I set up your integration, but do have some issues, maybe you can help:

I am using Fibaro Roller Shutter 3, if you set them to “Venetian blind”, you can adjust the tilt by setting a defined time the conversation needs for a “full tilt”. They also provide a second channel to set the tilt via a percentage then.

However, I am only able to select the cover entity in your blueprint, not sure if I should be able to select the tilting channel itself and if so, how.

Moreover, I do not get what I should set as default a maximum value. Is it the position or the tilt?

My target scenario is to close the Venetian blind completely when there is sunlight and only adapt the tilting. When sun is gone, lift the cover up again completely. Which values should I set then?

I set my Venetian blind as closed - open - closed (0% - 50% - 100%) as my blinds can tilt both inside and outside.

I don’t use fibaro devices myself so it is hard to say how they work.

Based on the source code of the integration you need to use the second cover entity from that device. That is also explained in this post I found after a quick google search: https://community.home-assistant.io/t/tilt-of-fibaro-roller-shutter-3-fgr-223/537291/2

That post also mentions a way to combine both cover entities into one that also works with the integration.

This can be done by creating a separate automation that controls the blinds vertical position based on your preferences. The integration provides a binary_sensor that tells you if the sun is in the sightline of the window that can be used to tell if the sun is gone. Than the tilting can be just controlled by the blueprint I guess

Thanks for searching, I do have the (2) entity, but it is automatically deactivated once you set the Roller Shutter to Venetian blind mode. I do have the same Roller Shutters for normal blinds, there is no other entity then.

But other than the post you linked says, I do have only 1 cover entity with the (I assume correct) attributes, you may double check to make sure it is what your integration expects:

If I got your reply correctly, then you integration tells only the cover.tilt_position to change, right?

Yes, it calls the position service call that is associated with the type of blind. In your case the cover.set_cover_tilt_position

Thanks, I tested it again, but it seems to be the case that the blueprint uses the target value provided by the sensor of the integration to set the position of the blind and NOT the tilt. The position matches exactly with the target of the sensor. The tilt is not set at all it seems.
Maybe there is something wrong in the blueprint? I used the one you provided in the other thread as the “Auto Generation” of the blueprint failed.

If you use the latest version you will not need the blueprint anymore as the integration itself calls the needed services.
You can find more info about the update in this topic Custom Component - Adaptive Cover

Maybe there is some bug in the blueprint, but never received an issue ticket for it and don’t have tilted blinds myself.

It seems that was the case, I had a fairly old version, even though I installed the integration only maybe one or two weeks ago. Now it seems to use the tilt attribute. Will test and provide feedback.

However I still do not understand what the standard and maximum position settings mean.

The default is the position where the blinds to return if the sun is not infront of the window. Some type of covers like roman shades should not open fully so their height position can be limited with that setting. Add "maximum" open setting so that roman shades don't try to open all the way · Issue #39 · basbruss/adaptive-cover · GitHub

I signed up to the Home Assistant community just to say Thank-you. This blueprint is amazing!
Incredible work.

1 Like

Is there any way to define that the blinds should receive the command “open_cover” instead of the percentage value to open completely?

If the blinds should open completely at the end of the day (=no sun) and receive the percentage value from the automation (I think fully open would be 100%, right?), they sometimes do not open completely, as it always seems to lead to greater deviations during the day, after each movement of the blinds.

Sending the command open_cover is the same as sending 100% with set_cover_position.

As regards to the cover not opening completely, that’s an issue with your system. Either your cover motor is not correctly calibrated or it’s not powerful enough. Perhaps your system has a calibration method you can do? You could also use something like this template sensor to calibrate it correctly: factor for position percentage #129

Thank you for your answer.

But can you explain to me why the command “open_cover” and “set_cover_position” (to 100%) should be the same? I’m pretty sure that moving to 100% position is not the same command as “move up completely”.

Aren’t two different commands sent to the cover?

Are you saying either command does something different for you? That makes no sense.

The command “set_cover_position” is used to move to a percent-position and “open_cover” gives the command to open completely. Can you explain to me why HA should send the same command to the blinds in this cases (“open_cover” and “set_cover_position” to 100%)?

When the blinds receive the command to open, they do so as far as they will go, without Home Assistant having to do anything. However, if a percentage position is to be approached, there is a completely different logic behind this. Especially if the blinds do not have an exact position.

I don’t know why you think it would send the same command to the blinds, but maybe there is someone else here who can comment on this and explain your answer to me.

Because setting the position to 100% is the same thing as telling it to open completely. 100% is completely open.

No, it’s the same thing. You can check this by going to dev tools and calling the ‘open cover’ service. You will see the position is changed to 100% like it should. It would be very strange if they did something different, because then you would never be able to use the full range of the cover position with the set_position service.

Okay, then I completely misunderstood the two commands. I assumed that “open_cover” simply gives the command to move to the “stop” and “set_cover_position” moves to a “theoretical” position of 100%, which then perhaps does not trigger the limit switch but, after the blind has moved up and down a few times a few percent, has a falsified position.