Change living room light handling so dimmer actually matters

To be used with adaptive lighting brightness adaptation turned off except when reset
This commit is contained in:
2023-04-02 14:25:21 -04:00
parent 1367b24818
commit 7fbe7baeb7
2 changed files with 188 additions and 20 deletions

View File

@ -874,21 +874,30 @@
dimmer_device: ccc672e3d924e72a952d801736ea59d3 dimmer_device: ccc672e3d924e72a952d801736ea59d3
on_short_action: [] on_short_action: []
on_long_action: on_long_action:
- service: switch.turn_on
data: {}
target:
entity_id: switch.adaptive_lighting_adapt_brightness_living_room
- wait_template: '{{ is_state(''switch.adaptive_lighting_adapt_brightness_living_room'',''on'')
}}'
continue_on_timeout: true
timeout: 00:00:05
- service: input_select.select_option - service: input_select.select_option
data: data:
option: Adaptive option: Adaptive
target: target:
entity_id: input_select.living_room_scenes entity_id: input_select.living_room_scenes
brightness_up_short_action: - delay:
hours: 0
minutes: 0
seconds: 3
milliseconds: 0
- service: switch.turn_off - service: switch.turn_off
data: {} data: {}
target: target:
entity_id: switch.adaptive_lighting_living_room entity_id: switch.adaptive_lighting_adapt_brightness_living_room
brightness_down_short_action: brightness_up_short_action: []
- service: switch.turn_off brightness_down_short_action: []
data: {}
target:
entity_id: switch.adaptive_lighting_living_room
off_short_action: off_short_action:
- service: input_boolean.turn_on - service: input_boolean.turn_on
data: {} data: {}
@ -899,16 +908,8 @@
option: Tokyo option: Tokyo
target: target:
entity_id: input_select.living_room_scenes entity_id: input_select.living_room_scenes
brightness_up_long_action: brightness_up_long_action: []
- service: switch.turn_off brightness_down_long_action: []
data: {}
target:
entity_id: switch.adaptive_lighting_living_room
brightness_down_long_action:
- service: switch.turn_off
data: {}
target:
entity_id: switch.adaptive_lighting_living_room
off_long_action: off_long_action:
- service: light.turn_on - service: light.turn_on
data: {} data: {}
@ -923,6 +924,26 @@
data: data:
option: Adaptive option: Adaptive
target: target:
entity_id: entity_id: input_select.dining_room_lamp_scenes
- input_select.living_room_scenes - service: switch.turn_on
- input_select.dining_room_lamp_scenes data: {}
target:
entity_id: switch.adaptive_lighting_adapt_brightness_living_room
- wait_template: '{{ is_state(''switch.adaptive_lighting_adapt_brightness_living_room'',''on'')
}}'
continue_on_timeout: true
timeout: 00:00:05
- service: input_select.select_option
data:
option: Adaptive
target:
entity_id: input_select.living_room_scenes
- delay:
hours: 0
minutes: 0
seconds: 3
milliseconds: 0
- service: switch.turn_off
data: {}
target:
entity_id: switch.adaptive_lighting_adapt_brightness_living_room

View File

@ -347,6 +347,87 @@ sensor:
{% endif %} {% endif %}
unit_of_measurement: 'K' unit_of_measurement: 'K'
icon_template: mdi:thermometer-lines icon_template: mdi:thermometer-lines
living_room_lights_brightness_actual:
friendly_name: "Living Room Lights - Brightness Actual"
unique_id: e557022a-184f-4111-bb6a-6c0869cce42c
value_template: >
{% set current = state_attr('light.living_room_lights','brightness') %}
{{ ((current / 255) * 100) | float | round(2) }}
availability_template: >
{% if is_state('light.living_room_lights','on') %}
true
{% else %}
false
{% endif %}
unit_of_measurement: '%'
icon_template: mdi:brightness-percent
living_room_lights_brightness_intended:
friendly_name: "Living Room Lights - Brightness Intended"
unique_id: a758742f-6724-4920-a9d1-325fe4f02664
value_template: "{{ state_attr('switch.adaptive_lighting_living_room','brightness_pct') | float | round(2) }}"
availability_template: >
{% if is_state('switch.adaptive_lighting_living_room','on') %}
true
{% else %}
false
{% endif %}
unit_of_measurement: '%'
icon_template: mdi:brightness-percent
living_room_lights_colortemp_actual:
friendly_name: "Living Room Lights - Colortemp Actual"
unique_id: dbe08826-e113-4474-bbca-60d3c32a4b65
value_template: "{{ state_attr('light.living_room_lights','color_temp_kelvin') | int }}"
availability_template: >
{% if is_state('light.living_room_lights','on') %}
true
{% else %}
false
{% endif %}
unit_of_measurement: 'K'
icon_template: mdi:thermometer-lines
living_room_lights_colortemp_intended:
friendly_name: "Living Room Lights - Colortemp Intended"
unique_id: 8b974c03-ab5b-4b89-97bf-afee78fa1a40
value_template: "{{ state_attr('switch.adaptive_lighting_living_room','color_temp_kelvin') | int }}"
availability_template: >
{% if is_state('switch.adaptive_lighting_living_room','on') %}
true
{% else %}
false
{% endif %}
unit_of_measurement: 'K'
icon_template: mdi:thermometer-lines
living_room_lights_brightness_diff:
friendly_name: "Living Room Lights - Brightness Diff"
unique_id: 05f911d3-3b6a-4ca2-8181-5365707b2456
value_template: >
{% set current = states('sensor.living_room_lights_brightness_actual') | float %}
{% set intended = states('sensor.living_room_lights_brightness_intended') | float %}
{{ (current - intended) | float | round(2) }}
availability_template: >
{% if is_state('light.living_room_lights','on') and is_state('switch.adaptive_lighting_living_room','on') %}
true
{% else %}
false
{% endif %}
unit_of_measurement: '%'
icon_template: mdi:brightness-percent
living_room_lights_colortemp_diff:
friendly_name: "Living Room Lights - Colortemp Diff"
unique_id: d8fcaa26-d3dc-48d8-b4b9-9e701a1506a8
value_template: >
{% set current = states('sensor.living_room_lights_colortemp_actual') | float %}
{% set intended = states('sensor.living_room_lights_colortemp_intended') | float %}
{{ (current - intended) | float | round(2) }}
availability_template: >
{% if is_state('light.living_room_lights','on') and is_state('switch.adaptive_lighting_living_room','on') %}
true
{% else %}
false
{% endif %}
unit_of_measurement: 'K'
icon_template: mdi:thermometer-lines
template: template:
- binary_sensor: - binary_sensor:
@ -399,6 +480,53 @@ template:
{% endif %} {% endif %}
device_class: problem device_class: problem
delay_on: "00:00:10" delay_on: "00:00:10"
- name: Living Room Sync Issue
unique_id: 35b3ca4f-14fb-4564-ab0c-1bb6a829c202
state: >
{% set colortemp = states('sensor.living_room_lights_colortemp_diff') | float(0) %}
{% set brightness = states('sensor.living_room_lights_brightness_diff') | float(0) %}
{% if is_state('light.living_room_lights','on') %}
{% if is_state('switch.adaptive_lighting_living_room','on') and is_state('switch.adaptive_lighting_sleep_mode_living_room','off') %}
{% if is_state('switch.adaptive_lighting_adapt_brightness_living_room','on') and is_state('switch.adaptive_lighting_adapt_color_living_room','on') %}
{{ (colortemp > 100 or colortemp < -100) or (brightness > 5 or brightness < -5) }}
{% elif is_state('switch.adaptive_lighting_adapt_brightness_living_room','on') and is_state('switch.adaptive_lighting_adapt_color_living_room','off') %}
{{ brightness > 5 or brightness < -5 }}
{% elif is_state('switch.adaptive_lighting_adapt_color_living_room','on') and is_state('switch.adaptive_lighting_adapt_brightness_living_room','off') %}
{{ colortemp > 100 or colortemp < -100 }}
{% endif %}
{% endif %}
{% endif %}
attributes:
color_diff: >
{% set colortemp = states('sensor.living_room_lights_colortemp_diff') | float(0) %}
{% if is_state('light.living_room_lights','on') %}
{% if is_state('switch.adaptive_lighting_living_room','on') and is_state('switch.adaptive_lighting_sleep_mode_living_room','off') %}
{% if is_state('switch.adaptive_lighting_adapt_color_living_room','on') %}
{{ states('sensor.living_room_lights_colortemp_diff') }}
{% else %}
Color Off
{% endif %}
{% else %}
Adaptive Off
{% endif %}
{% else %}
Lights Off
{% endif %}
brightness_diff: >
{% set brightness = states('sensor.living_room_lights_brightness_diff') | float(0) %}
{% if is_state('light.living_room_lights','on') %}
{% if is_state('switch.adaptive_lighting_living_room','on') and is_state('switch.adaptive_lighting_sleep_mode_living_room','off') %}
{% if is_state('switch.adaptive_lighting_adapt_brightness_living_room','on') %}
{{ states('sensor.living_room_lights_brightness_diff') }}
{% else %}
Brightness Off
{% endif %}
{% else %}
Adaptive Off
{% endif %}
{% else %}
Lights Off
{% endif %}
device_class: problem device_class: problem
delay_on: "00:00:10" delay_on: "00:00:10"
@ -847,6 +975,25 @@ automation:
data: data:
option: Adaptive option: Adaptive
- id: 3f05cd0d-bd6e-42c7-884d-3d1cbfda46e0
alias: Living Room Lights Adaptive Resync
description: Deals with situations where the living room lights should be adaptive but end up out of sync
mode: restart
trigger:
- platform: state
entity_id: binary_sensor.living_room_sync_issue
from: 'off'
to: 'on'
condition:
- condition: template
value_template: "{{ is_state_attr('light.living_room_lights','color_mode','color_temp') }}"
action:
- service: input_select.select_option
target:
entity_id: input_select.living_room_scenes
data:
option: Adaptive
script: script:
adaptive_on_first_floor: adaptive_on_first_floor:
alias: Adaptive on First Floor alias: Adaptive on First Floor