stop hating myself

This commit is contained in:
CeeWeasel
2025-12-09 16:59:38 -05:00
parent a49d981ad4
commit 578edbc7dc
100 changed files with 11098 additions and 966 deletions
+148 -148
View File
@@ -1,170 +1,170 @@
template:
- binary_sensor:
- name: Dishwasher
unique_id: templatebinarysensor.dishwasher
icon: mdi:dishwasher
delay_on: "{{states('input_number.dishwasher_delay_on') | float(default=0) }}"
delay_off: "{{states('input_number.dishwasher_delay_off') | float(default=0) }}"
availability: "{{ states('sensor.pm_dishwasher_w') not in ['unknown', 'unavailable'] }}"
attributes:
model_number: "MDB6769PAS1"
serial_number: "F24407234"
power: "{{ states('sensor.pm_dishwasher_w') | float(default=0)}}"
target: "{{ states('input_number.dishwasher_on') | float(default=0)}}"
state: "{{ states('sensor.pm_dishwasher_w')|float(default=0) >= states('input_number.dishwasher_on')|float(default=0) }}"
# template:
# - binary_sensor:
# - name: Dishwasher
# unique_id: templatebinarysensor.dishwasher
# icon: mdi:dishwasher
# delay_on: "{{states('input_number.dishwasher_delay_on') | float(default=0) }}"
# delay_off: "{{states('input_number.dishwasher_delay_off') | float(default=0) }}"
# availability: "{{ states('sensor.pm_dishwasher_w') not in ['unknown', 'unavailable'] }}"
# attributes:
# model_number: "MDB6769PAS1"
# serial_number: "F24407234"
# power: "{{ states('sensor.pm_dishwasher_w') | float(default=0)}}"
# target: "{{ states('input_number.dishwasher_on') | float(default=0)}}"
# state: "{{ states('sensor.pm_dishwasher_w')|float(default=0) >= states('input_number.dishwasher_on')|float(default=0) }}"
- sensor:
- name: Dishwasher
unique_id: templatesensor_dishwasher
state: >
{% if is_state('binary_sensor.dishwasher','on')%}
running
{% elif is_state('binary_sensor.dishwasher','off') and is_state('input_boolean.empty_dishwasher','on') %}
pending
{% else %}
idle
{% endif %}
icon: >
{% if is_state('sensor.dishwasher','idle') %}
mdi:dishwasher-off
{% elif is_state('sensor.dishwasher','pending') %}
mdi:dishwasher-alert
{% else %}
mdi:dishwasher
{% endif %}
attributes:
model_number: "MDB6769PAS1"
serial_number: "F24407234"
power: "{{ states('sensor.pm_dishwasher_w') | float(default=0)}}"
target: "{{ states('input_number.dishwasher_on') | float(default=0)}}"
# - sensor:
# - name: Dishwasher
# unique_id: templatesensor_dishwasher
# state: >
# {% if is_state('binary_sensor.dishwasher','on')%}
# running
# {% elif is_state('binary_sensor.dishwasher','off') and is_state('input_boolean.empty_dishwasher','on') %}
# pending
# {% else %}
# idle
# {% endif %}
# icon: >
# {% if is_state('sensor.dishwasher','idle') %}
# mdi:dishwasher-off
# {% elif is_state('sensor.dishwasher','pending') %}
# mdi:dishwasher-alert
# {% else %}
# mdi:dishwasher
# {% endif %}
# attributes:
# model_number: "MDB6769PAS1"
# serial_number: "F24407234"
# power: "{{ states('sensor.pm_dishwasher_w') | float(default=0)}}"
# target: "{{ states('input_number.dishwasher_on') | float(default=0)}}"
input_boolean:
empty_dishwasher:
name: Empty Dishwasher
icon: mdi:cupboard
# input_boolean:
# empty_dishwasher:
# name: Empty Dishwasher
# icon: mdi:cupboard
input_number:
dishwasher_on:
# was 4
name: "Dishwasher On"
icon: mdi:dishwasher
min: 0
max: 1000
step: 0.1
mode: box
unit_of_measurement: W
# input_number:
# dishwasher_on:
# # was 4
# name: "Dishwasher On"
# icon: mdi:dishwasher
# min: 0
# max: 1000
# step: 0.1
# mode: box
# unit_of_measurement: W
dishwasher_off:
name: "Dishwasher Off"
icon: mdi:dishwasher-off
min: 0
max: 1000
step: 0.1
mode: box
unit_of_measurement: W
# dishwasher_off:
# name: "Dishwasher Off"
# icon: mdi:dishwasher-off
# min: 0
# max: 1000
# step: 0.1
# mode: box
# unit_of_measurement: W
dishwasher_delay_on:
name: "Dishwasher Delay On"
icon: mdi:clock
min: 0
max: 900
step: 10
mode: box
# dishwasher_delay_on:
# name: "Dishwasher Delay On"
# icon: mdi:clock
# min: 0
# max: 900
# step: 10
# mode: box
dishwasher_delay_off:
# was 600
name: "Dishwasher Delay Off"
icon: mdi:clock-alert
min: 0
max: 900
step: 10
mode: box
# dishwasher_delay_off:
# # was 600
# name: "Dishwasher Delay Off"
# icon: mdi:clock-alert
# min: 0
# max: 900
# step: 10
# mode: box
automation:
- id: automation_empty_dishwasher_state
alias: Empty Dishwasher
trigger:
- id: dishwasher_off
platform: state
entity_id: binary_sensor.dishwasher
from: "on"
to: "off"
# automation:
# - id: automation_empty_dishwasher_state
# alias: Empty Dishwasher
# trigger:
# - id: dishwasher_off
# platform: state
# entity_id: binary_sensor.dishwasher
# from: "on"
# to: "off"
- id: dishwasher_on
platform: state
entity_id: binary_sensor.dishwasher
from: "off"
to: "on"
# - id: dishwasher_on
# platform: state
# entity_id: binary_sensor.dishwasher
# from: "off"
# to: "on"
- id: door_open
platform: state
entity_id: binary_sensor.dishwasher_door_contact
from: "off"
to: "on"
for:
seconds: 5
# - id: door_open
# platform: state
# entity_id: binary_sensor.dishwasher_door_contact
# from: "off"
# to: "on"
# for:
# seconds: 5
condition: []
action:
- choose:
- alias: "Dishwasher is running. No need to empty it yet"
conditions:
- condition: trigger
id: dishwasher_on
# condition: []
# action:
# - choose:
# - alias: "Dishwasher is running. No need to empty it yet"
# conditions:
# - condition: trigger
# id: dishwasher_on
- condition: state
entity_id: input_boolean.empty_dishwasher
state: "on"
# - condition: state
# entity_id: input_boolean.empty_dishwasher
# state: "on"
sequence:
- action: logbook.log
data_template:
name: Empty Dishwasher - Load Started
entity_id: automation.empty_dishwasher
message: Dishwasher just turned on. Turning off input_boolean in case it got left on
# sequence:
# - action: logbook.log
# data_template:
# name: Empty Dishwasher - Load Started
# entity_id: automation.empty_dishwasher
# message: Dishwasher just turned on. Turning off input_boolean in case it got left on
- action: homeassistant.turn_off
target:
entity_id: input_boolean.empty_dishwasher
# - action: homeassistant.turn_off
# target:
# entity_id: input_boolean.empty_dishwasher
- alias: "Dishwasher finished while door was shut"
conditions:
- condition: trigger
id: dishwasher_off
# - alias: "Dishwasher finished while door was shut"
# conditions:
# - condition: trigger
# id: dishwasher_off
- condition: state
entity_id: binary_sensor.dishwasher_door_contact
state: "off"
# - condition: state
# entity_id: binary_sensor.dishwasher_door_contact
# state: "off"
sequence:
- action: logbook.log
data_template:
name: Empty Dishwasher - Load finished
entity_id: automation.empty_dishwasher
message: Dishwasher just turned off while the door was shut. Assuming dishes need to be put away
# sequence:
# - action: logbook.log
# data_template:
# name: Empty Dishwasher - Load finished
# entity_id: automation.empty_dishwasher
# message: Dishwasher just turned off while the door was shut. Assuming dishes need to be put away
- action: homeassistant.turn_on
target:
entity_id: input_boolean.empty_dishwasher
# - action: homeassistant.turn_on
# target:
# entity_id: input_boolean.empty_dishwasher
- alias: "Door was opened for 30 seconds while dishwasher was off"
conditions:
- condition: trigger
id: door_open
# - alias: "Door was opened for 30 seconds while dishwasher was off"
# conditions:
# - condition: trigger
# id: door_open
- condition: state
entity_id: binary_sensor.dishwasher
state: "off"
# - condition: state
# entity_id: binary_sensor.dishwasher
# state: "off"
sequence:
- action: logbook.log
data_template:
name: Empty Dishwasher - Dishes put away
entity_id: automation.empty_dishwasher
message: Dishwasher door was opened while the dishwasher was off. Assuming dishes don't need to be put away.
# sequence:
# - action: logbook.log
# data_template:
# name: Empty Dishwasher - Dishes put away
# entity_id: automation.empty_dishwasher
# message: Dishwasher door was opened while the dishwasher was off. Assuming dishes don't need to be put away.
- action: homeassistant.turn_off
target:
entity_id: input_boolean.empty_dishwasher
# - action: homeassistant.turn_off
# target:
# entity_id: input_boolean.empty_dishwasher
mode: single
# mode: single