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

This means that if I open the shutter manually, it will immediately return to the current position, unless I create an automation to block the BP for the desired time?

You mean force will move my blind completely up although my opening position is like in the attached picture ?

This is my Force Immediate Opening and Additional condition for the entire automation. I hope i set this ones correct


I am a Newbie using this blueprint but the documentation says the next move and not immediately if the condition before your manual move is still the same.
image
Please correct me if i understood it wrong.

You can use the additional conditions inside the blueprint to block the execution. Be creative.

That’s how it is. You could have just tried it out. Then you’ll see the result.

@HerrVorragend First of all - is there a possibility to donate somewhere for this great work? Don’t expect big amounts from my side, but I totally appreciate your work here!!

Another question come up:

  • next to opening / closing times (earliest/latest) I also adjusted now the elevation times as per your advise to adjust the offset. Once I activate “4 - :sunny: - Enable control via sun elevation” he considers the elevation as primary setting and takes the defined times (like for example “:arrow_up_small: Time For Drive Up - Early On Workdays”) - where I defined earliest & latest times - as the “border” to move in, correct ? Because imagine in summer, the sunrise will be around 5.00 in the morning. The elevation of 0° will be reached at this time, but I hope the blueprint will consider in parallel the earliest opening time of 7.00 in the morning and just then open and not with elevation being at 0° at 5.00. Correctly understood ?

Many thanks for the hint on OpenWeather - I will check your comment & adjusted. Thank you!!

No action is executed before the earliest time. If the height of the sun or a brightness value exceeds the threshold beforehand, it is triggered at the earliest time.

Conversely, if the thresholds are not reached, the latest time will be triggered.

1 Like

thank you - after some research I got it. I needed to subsribe their plan and limit daily requests to 999 in order not to cross the 1000 requests, where you need to pay from then on. Just note it here if others are impacted as well.

I didn’t know that for a long time either.
Until I took some time and fought my way through the instructions. :smiley:

The closing by elevation has surprisingly not worked this evening :frowning: I’m not yet a pro in identifying the root cause, but at least within traces i found an error message:

Ausgeführt: 27. Februar 2024 um 18:25:31
Ergebnis:

result: null

if/condition/0

Ausgeführt: 27. Februar 2024 um 18:25:31

Fehler: In ‘or’ (item 2 of 2): In ‘template’ condition: AttributeError: ‘list’ object has no attribute ‘lower’

if/condition/0/conditions/0

Ausgeführt: 27. Februar 2024 um 18:25:31
Ergebnis:

result: false entities:

if/condition/0/conditions/1

Ausgeführt: 27. Februar 2024 um 18:25:31

Fehler: In ‘template’ condition: AttributeError: ‘list’ object has no attribute ‘lower’

In this code snippet i assume:

  • or:
    • ‘{{ ‘‘cover_helper_enabled’’ in cover_status_options }}’
    • ‘{{ state_attr(cover_status_helper, ‘‘max’’) < 254 }}’
      then:
  • service: system_log.write
    data:
    level: ‘{{ check_config_debuglevel }}’
    message: >-
    Cover Control Automation (CCA): Config issue: Wrong length of the cover
    status helper - {{this.entity_id}}
    logger: blueprints.hvorragend.cover_control_automation

I already know this warning and it has already been fixed in my local code. However, this will not have been the reason why the roller blind movement was not carried out.

Background info:

For the force variables, I also have to check in advance whether they are empty.

1 Like

I have the issue, that my blind opens but not close. The blueprint runs at the defined close time but the cover doesn´t move. I use Homematic HmIP-DRBLI4.

I configured a minimal setup for testing:

11:05 blueprint runs and open tilt

11:06 blueprint runs but NO move at all

I don’t know if you can test it like this, as the time periods overlap.
Please send me a trace from 11:06 am.

I was too late and the trace was no more available. I tested again 14:02 open and 14:03 close. Trace attached. Thank you in advance.

I am not sure my status helper is configured right. Could someone post his as reference?

Sorry, I haven’t had time to look in yet. But today I found a really stupid bug that can be responsible for various errors. Maybe the fix will come today.

1 Like

I am happy to test :wink:

I had this evening also again the issue that closing didnt work. Thanks for your dedication @Herr.Vorragend

Json for this trace:

New Update:

2024.02.28-01:
  - Fixed a nasty bug in the helper detection.
  - Fixed the warning: AttributeError: ‘list’ object has no attribute ‘lower’

Hello, I canceled the debugging in depth at the very beginning of the trace. In your case, open_position and close_position are both set to the value 0. This is definitely wrong.

Please do me a favor in the future and post your entire config as YAML. That would also have saved you time.

        "blind": "cover.jalousien_buro_wz_esszimmer_kuche_jalousie_buro",
        "blind_entities": [
          "cover.jalousien_buro_wz_esszimmer_kuche_jalousie_buro"
        ],
        "auto_options": [
          "auto_up_enabled",
          "auto_down_enabled"
        ],
        "default_brightness_sensor": [],
        "brightness_up": 0,
        "brightness_down": 0,
        "default_sun_sensor": "sun.sun",
        "sun_elevation_up": 0,
        "sun_elevation_down": -3.5,
        "time_up_early": "14:02:00",
        "time_up_early_non_workday": "07:00:00",
        "time_up_late": "08:00:00",
        "time_up_late_non_workday": "08:30:00",
        "time_down_early": "16:00:00",
        "time_down_early_non_workday": "16:00:00",
        "time_down_late": "14:03:00",
        "time_down_late_non_workday": "23:00:00",
        "workday_sensor": "binary_sensor.workday_sensor",
        "drive_delay_fix": 2,
        "drive_delay_random": 0,
        "drive_time": 56,
        "time_control": "time_control_input",
        "time_schedule_helper": [],
        "time_up_early_today": "14:02:00",
        "time_up_late_today": "08:00:00",
        "time_down_early_today": "16:00:00",
        "time_down_late_today": "14:03:00",
        "open_position": 0,
        "open_tilt_position": 0,
        "close_position": 0,
        "close_tilt_position": 0,
        "ventilate_position": 30,
        "ventilate_tilt_position": 50,
        "position_tolerance": 0,
        "contact_sensor": [],
        "resident_sensor": [],
        "auto_up_force": [],
        "auto_down_force": [],
        "shading_brightness_sensor": "sensor.wetterstation_brightness",
        "shading_temperatur_sensor1": "sensor.wetterstation_temperature",
        "shading_temperatur_sensor2": [],
        "shading_min_temperatur1": 20,
        "shading_min_temperatur2": 18,
        "shading_azimuth_start": 95,
        "shading_azimuth_end": 150,
        "shading_elevation_min": 25,
        "shading_elevation_max": 40,
        "shading_position": 0,
        "shading_tilt_position": 0,
        "shading_sun_brightness_start": 210,
        "shading_sun_brightness_end": 190,
        "shading_waitingtime_start": 300,
        "shading_waitingtime_end": 900,
        "shading_forecast_sensor": [],
        "shading_forecast_temp": 18,
        "shading_weather_conditions": [
          "sunny",
          "partlycloudy",
          "cloudy",
          "clear"
        ],
        "check_config": false,
        "check_config_debuglevel": "info",