Here is a sample switch package (just tweek the switch entities and make the other variables uses unique and you can copy this for each switch (or blind in your case).
input_boolean:
ib_switch_a2_timer_enable:
name: Timer Enable
#initial: on
icon: mdi:timer
ib_switch_a2_timeslot1_enable:
name: Time Slot 1 Enable
#initial: on
icon: mdi:clock-outline
ib_switch_a2_timeslot2_enable:
name: Time Slot 2 Enable
#initial: on
icon: mdi:clock-outline
input_number:
in_switch_a2_timer:
name: On Timer (mins)
#initial: 30
min: 1
max: 360
step: 1
mode: box
icon: mdi:alarm
input_datetime:
id_switch_a2_tmeslt1_on:
name: Time Slot 1 On Time
has_time: true
#initial: '09:00:00'
icon: mdi:clock-start
id_switch_a2_tmeslt1_off:
name: Time Slot 1 Off Time
has_time: true
#initial: '10:00:00'
icon: mdi:clock-end
id_switch_a2_tmeslt2_on:
name: Time Slot 2 On Time
has_time: true
#initial: '18:00:00'
icon: mdi:clock-start
id_switch_a2_tmeslt2_off:
name: Time Slot 2 Off Time
has_time: true
#initial: '19:00:00'
icon: mdi:clock-end
automation:
#name: Switch A2 Off Delay
- alias: au_switch_a2_offdelay
trigger:
- platform: state
entity_id: switch.switch_aeon_labs_dsc06106_02
to: 'on'
condition:
- condition: state
entity_id: input_boolean.ib_switch_a2_timer_enable
state: 'on'
action:
- service: script.turn_off
entity_id: script.sc_switch_a2_timer
- service: script.sc_switch_a2_timer
#radio button (toggle) timer to time slot
- alias: au_switch_a2_radiob_tmr_to_slot
trigger:
- platform: state
entity_id: input_boolean.ib_switch_a2_timer_enable
to: 'on'
action:
- service: input_boolean.turn_off
entity_id: input_boolean.ib_switch_a2_timeslot1_enable
#radio button (toggle) time slot to timer
- alias: au_switch_a2_radiob_slot_to_tmr
trigger:
- platform: state
entity_id: input_boolean.ib_switch_a2_timeslot1_enable
to: 'on'
action:
- service: input_boolean.turn_off
entity_id: input_boolean.ib_switch_a2_timer_enable
#turning off timer enable cancels timer
- alias: au_switch_a2_cancel_tmr
trigger:
- platform: state
entity_id: input_boolean.ib_switch_a2_timer_enable
to: 'off'
action:
- service: script.turn_off
entity_id: script.sc_switch_a2_timer
#time slot 1 on
- alias: au_switch_a2_ontime1
trigger:
- platform: template
value_template: '{{ states("sensor.time") == states("input_datetime.id_switch_a2_tmeslt1_on") [0:5] }}'
condition:
- condition: state
entity_id: input_boolean.ib_switch_a2_timeslot1_enable
state: 'on'
action:
- service: switch.turn_on
entity_id: switch.switch_aeon_labs_dsc06106_02
#time slot 1 off
- alias: au_switch_a2_offtime1
trigger:
- platform: template
value_template: '{{ states("sensor.time") == states("input_datetime.id_switch_a2_tmeslt1_off") [0:5] }}'
condition:
- condition: state
entity_id: input_boolean.ib_switch_a2_timeslot1_enable
state: 'on'
action:
- service: switch.turn_off
entity_id: switch.switch_aeon_labs_dsc06106_02
#time slot 2 on
- alias: au_switch_a2_ontime2
trigger:
- platform: template
value_template: '{{ states("sensor.time") == states("input_datetime.id_switch_a2_tmeslt2_on") [0:5] }}'
condition:
- condition: state
entity_id: input_boolean.ib_switch_a2_timeslot2_enable
state: 'on'
action:
- service: switch.turn_on
entity_id: switch.switch_aeon_labs_dsc06106_02
#time slot 2 off
- alias: au_switch_a2_offtime2
trigger:
- platform: template
value_template: '{{ states("sensor.time") == states("input_datetime.id_switch_a2_tmeslt2_off") [0:5] }}'
condition:
- condition: state
entity_id: input_boolean.ib_switch_a2_timeslot2_enable
state: 'on'
action:
- service: switch.turn_off
entity_id: switch.switch_aeon_labs_dsc06106_02
#name: Switch A2 Off Cancels Timer
- alias: au_switch_a2_offcancelstimer
trigger:
- platform: state
entity_id: switch.switch_aeon_labs_dsc06106_02
to: 'off'
action:
- service: script.turn_off
entity_id: script.sc_switch_a2_timer
script:
sc_switch_a2_timer:
alias: Switch A2 Timer Script
sequence:
- delay: '00:{{ states("input_number.in_switch_a2_timer") | int }}:00'
- service: switch.turn_off
entity_id: switch.switch_aeon_labs_dsc06106_02
Note: No ‘Initial’ values so that they will retain current settings through reboots if you find settings you like.
And here is the lovelace yaml that goes with it
- type: entities
title: Switch A2 - Unallocated
show_header_toggle: false
entities:
- entity: switch.switch_aeon_labs_dsc06106_02
- entity: input_boolean.ib_switch_a2_timer_enable
- entity: input_number.in_switch_a2_timer
- entity: input_boolean.ib_switch_a2_timeslot1_enable
- entity: input_datetime.id_switch_a2_tmeslt1_on
- entity: input_datetime.id_switch_a2_tmeslt1_off
- entity: input_boolean.ib_switch_a2_timeslot2_enable
- entity: input_datetime.id_switch_a2_tmeslt2_on
- entity: input_datetime.id_switch_a2_tmeslt2_off