☀️ Cover Control Automation (CCA) - a comprehensive and highly configurable roller blind blueprint

Thanks for the great work.
I have a question if I can migrate my existing Nodered to your blueprint. I’m a little bit lost in the configuration jungle.
I could figure out that each of the functions I want to use are implemented but I couldn’t figure out if my exact process matches to yours.
I have a KNX switch for each shutter where you can switch between manual position (open, closed) or automatic. This is my workflow I’m using:

As I saw most of my workflow should work but I’m not sure about the manual close position and then tilting the window.

i use the blueprint also only with sun shading and sun elevation, and i also deactivated open and closing. And it works fine and with using of the elevation part it should not open/close during the night;)

So that worked for me also with the older versions!

Additional question:
How can i fill the status helper, and what information should the helper save? Or will it be filled automatically? MAybe with an example:)

1 Like

Hi together,

I started a few days ago with the blueprint (Version 2024.05.28-01) and it looks to work, but I have a general question…

Sun is coming up => shading starts => my daughter raises the blinds completely to greet someone => nothing happens the hole day (until the shading is over)

Is there no possibility to go back to automation e.g. by a helper?

I am working since years with this cover automation ( LBS 19000707 - Beschattungssteuerung-Rollo - KNX-User-Forum )

and after moving manually the automation is completely stopping… but it is possible to go back to the automation.

Thank you for your great work!

Markus

P.S: In an older Version of the CCA, there was an option “allow shading to activate multiple times a day” but this is not in the newest version…

It‘s inverted now.

Correct. This is how I described it in the changelog (see above) under “Breaking Change”.

How is CCA supposed to know when your daughter has finished greeting someone? :grinning:

If the roller blind has been opened completely - i.e. a configured status has been detected - CCA will move again with the next trigger.

Important: There must be a trigger. In other words, a value must become false once and then true again. That’s just how HA works.

Just create a new one. As an empty shell. CCA does the rest itself. Just try it out and observe. :smile:

Take a look at what I’ve seen.
It comes with the new Core version.
I will definitely implement that.

2 Likes

Many thanks for that.

It doesn’t work in this exact form.
Historically, I have two separate contacts for lockout protection and pure ventilation. Two-way sensors are currently supported. Three-way with open/tilt are not directly possible in CCA.

1 Like

ok i will test it :slight_smile:

so in the old version you had to activate the “allow shading…multiple times a day”. In the new version its automatically activated :wink:

Sorry i am also new in HA :wink:

If i understand correct, i can see in the cover status helper the manual modification.

… “manual”::{“a”:true,

correct?
So i can show this in the dashboard for each cover.
Is there maybe a setting which i can change to resume which did not affect so much things?
Or is there maybe a other solution?
Disableing and enableing the automation is not working, or?

Otherwise the covers will be open the whole day and the shading ist not working

Update:
i think i found a solution… set up a helper for “force activation sun shading” short to true :wink:

Is anyone using Shelly 2.5 and sun-shading is working as expected btw ?

Not sure, but it seems the connection is resetted of the device in the moment CCA executes some action. Other actions of CCA work properly.

That’s strange. The commands are almost identical. Nothing is done very differently with shading.
Or is there too much radio traffic? Can there be collisions with Shelly?

I’m sorry, but I don’t quite understand. What doesn’t work? Or what should work differently? Feel free to show me your config.

Thanks for the great automation. I am struggling with a shutter that does (knowingly) not report a position (always -1% in HA, because multiple shutters are controlled by this device). Is there a way to control such shutters with CCA? Creating a helper did not help, the helper remains “undefined”. Is there a way to force the automation ignoring the current position? Config is as follows:

this:
  entity_id: automation.wozi_rollo_auto
  state: 'on'
  attributes:
    id: '1716959200950'
    last_triggered: '2024-05-31T19:06:33.137753+00:00'
    mode: restart
    current: 0
    icon: mdi:window-shutter-auto
    friendly_name: wozi rollo auto
  last_changed: '2024-05-31T17:28:25.946724+00:00'
  last_reported: '2024-05-31T19:06:33.191906+00:00'
  last_updated: '2024-05-31T19:06:33.191906+00:00'
  context:
    id: 01HZ80QTS5MQJ2Q7EF4N1YW5Y1
    parent_id: 01HZ80P05G8D53QE5NRHD59QYK
    user_id: null
trigger:
  id: t_ma_1
  idx: '21'
  alias: null
  platform: state
  entity_id: cover.wozi_rollos
  from_state:
    entity_id: cover.wozi_rollos
    state: opening
    attributes:
      current_position: 101
      device_class: shutter
      friendly_name: Wozi Rollos
      supported_features: 11
    last_changed: '2024-05-31T19:09:17.448847+00:00'
    last_reported: '2024-05-31T19:09:17.448847+00:00'
    last_updated: '2024-05-31T19:09:17.448847+00:00'
    context:
      id: 01HZ80WV7F3EE0CKS041N4ZB1M
      parent_id: null
      user_id: b9df0958ad314f54aa86c705a0c4f3bd
  to_state:
    entity_id: cover.wozi_rollos
    state: opening
    attributes:
      current_position: -1
      device_class: shutter
      friendly_name: Wozi Rollos
      supported_features: 11
    last_changed: '2024-05-31T19:09:17.448847+00:00'
    last_reported: '2024-05-31T19:09:18.876519+00:00'
    last_updated: '2024-05-31T19:09:17.875609+00:00'
    context:
      id: 01HZ80WV7F3EE0CKS041N4ZB1M
      parent_id: null
      user_id: b9df0958ad314f54aa86c705a0c4f3bd
  for:
    __type: <class 'datetime.timedelta'>
    total_seconds: 60
  attribute: current_position
  description: state of cover.wozi_rollos
blind: cover.wozi_rollos
open_position: 100
close_position: 0
shading_position: 25
position_tolerance: 0
auto_options:
  - auto_up_enabled
  - auto_down_enabled
  - auto_sun_enabled
time_up_early: '06:45:00'
time_up_early_non_workday: '07:15:00'
time_up_late: '07:30:00'
time_up_late_non_workday: '08:00:00'
time_down_early: '17:00:00'
time_down_early_non_workday: '17:00:00'
time_down_late: '22:00:00'
time_down_late_non_workday: '22:00:00'
workday_sensor: []
default_brightness_sensor: []
brightness_up: 0
brightness_down: 0
default_sun_sensor: sun.sun
sun_elevation_up: -5
sun_elevation_down: -5
contact_sensor: []
contact_sensor_lockout: []
resident_sensor: []
time_control: time_control_input
time_schedule_helper: []
shading_brightness_sensor: []
shading_temperatur_sensor1: []
shading_temperatur_sensor2: []
shading_min_temperatur1: 18
shading_min_temperatur2: 18
shading_azimuth_start: 95
shading_azimuth_end: 265
shading_elevation_min: 25
shading_elevation_max: 90
shading_sun_brightness_start: 35000
shading_sun_brightness_end: 25000
shading_forecast_temp: 20
shading_forecast_sensor: []
shading_weather_conditions:
  - sunny
  - partlycloudy
  - cloudy
  - clear
is_shading_enabled: false
is_up_enabled: true
is_down_enabled: true
is_brightness_enabled: false
is_sun_elevation_enabled: true
is_ventilation_enabled: false
is_lockout_protection_enabled: false
is_time_field_enabled: true
is_schedule_helper_enabled: false
version: 2024.05.22-01
blind_entities:
  - cover.wozi_rollos
current_position: -1
current_sun_azimuth: 305.18
current_sun_elevation: 1.95
drive_delay_fix: 0
drive_delay_random: 5
drive_time: 90
time_up_early_today: '06:45:00'
time_up_late_today: '07:30:00'
time_down_early_today: '17:00:00'
time_down_late_today: '22:00:00'
open_tilt_position: 50
close_tilt_position: 50
ventilate_position: 30
ventilate_tilt_position: 50
auto_up_force: []
auto_down_force: []
auto_ventilate_force: []
auto_shading_start_force: []
shading_tilt_position: 50
check_config: true
check_config_debuglevel: info
cover_status_options: cover_helper_enabled
cover_status_helper: input_text.cover_status_wozi
is_status_helper_enabled: false
is_cover_open: false
is_cover_open_ts: 0
is_cover_closed: false
is_cover_closed_ts: 0
is_cover_ventilated: false
is_cover_ventilated_ts: 0
is_cover_shaded: false
is_cover_shaded_ts: 0
is_cover_locked: false
is_cover_locked_ts: 0
is_cover_manual: false
is_cover_manual_ts: 0
cover_status_time: false
in_open_position: false
in_close_position: false
in_shading_position: false
in_ventilate_position: false
individual_config: []
prevent_close_after_lockout: false
prevent_higher_position_closing: false
prevent_higher_position_shading_end: false
prevent_forecast_service: false
prevent_shading_end_if_closed: false
prevent_default_cover_actions: false
allow_shading_multiple_times: false
allow_opening_multiple_times: false
allow_closing_multiple_times: false
ignore_after_manual_config: []
ignore_opening_after_manual: false
ignore_closing_after_manual: false
ignore_ventilation_after_manual: false
ignore_shading_after_manual: false
auto_ventilate_options: []
ventilation_delay_enabled: false
ventilation_if_lower_enabled: false

Thanks for the help!

Sorry, but it is elementary to recognize the position. Without the “current_position” attribute, it won’t work.

hi guys, another question from me about the open/close via sun elevation :slight_smile:

What is the intension of this? I mean the cover should close if the elevation is below a value and should open if its above a value! So if i set the opening value to 0 the cover will open if the sun rises or if i set it to 30 (the sun is shining) the cover will open when its above! For me that is wrong! For me the mor logical way would be, if the sun is above a value the cover should close and if the sun is below, the cover should open!..

Oh wait i have the answer :D…

open if above and close if below its the winter mode!
closing if above and open if below could be the sommer mode! ← would that be possible?

Somehow I’m on the wrong end of the stick. I assume that you live in a part of the world where this is the case. Can you give me an approximate location/country so that I can look at the course of the sun?

But with you it’s always the opposite. Recently, you used the term “winder mode” to refer to a temperature-dependent control system.

But these are all different things.

I can see if I can make the sun control configurable. Let me know roughly where you live.