mirror of
https://github.com/CeeWeasel/fresh-home.git
synced 2026-08-10 11:00:14 -04:00
renames, fixes , and other fun schtuff
This commit is contained in:
+1
-1
@@ -38,7 +38,7 @@ media/
|
|||||||
custom_components/
|
custom_components/
|
||||||
custom_logs/
|
custom_logs/
|
||||||
snapshots/
|
snapshots/
|
||||||
rtl_433*/
|
rtl_433/
|
||||||
tts/
|
tts/
|
||||||
/lovelace/private
|
/lovelace/private
|
||||||
model_cache/
|
model_cache/
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ mode: restart
|
|||||||
|
|
||||||
trigger:
|
trigger:
|
||||||
- platform: state
|
- platform: state
|
||||||
entity_id: input_boolean.white_bed_occupied
|
entity_id: binary_sensor.white_bed_occupied
|
||||||
to: "on"
|
to: "on"
|
||||||
for: "00:10:00"
|
for: "00:10:00"
|
||||||
- platform: state
|
- platform: state
|
||||||
@@ -22,14 +22,14 @@ condition:
|
|||||||
state: "on"
|
state: "on"
|
||||||
- condition: state
|
- condition: state
|
||||||
entity_id:
|
entity_id:
|
||||||
- input_boolean.white_bed_occupied
|
- binary_sensor.white_bed_occupied
|
||||||
state: "on"
|
state: "on"
|
||||||
for: "00:10:00"
|
for: "00:10:00"
|
||||||
- condition: state
|
- condition: state
|
||||||
entity_id: input_boolean.bridget_in_bed
|
entity_id: input_boolean.bridget_in_bed
|
||||||
state: "off"
|
state: "off"
|
||||||
#- condition: state
|
#- condition: state
|
||||||
# entity_id: input_boolean.white_bed_occupied
|
# entity_id: binary_sensor.white_bed_occupied
|
||||||
# state: 'on'
|
# state: 'on'
|
||||||
# for:
|
# for:
|
||||||
# minutes: 5
|
# minutes: 5
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ mode: restart
|
|||||||
|
|
||||||
trigger:
|
trigger:
|
||||||
- platform: state
|
- platform: state
|
||||||
entity_id: input_boolean.white_bed_occupied
|
entity_id: binary_sensor.white_bed_occupied
|
||||||
to: "on"
|
to: "on"
|
||||||
for: "00:05:00"
|
for: "00:05:00"
|
||||||
- platform: state
|
- platform: state
|
||||||
@@ -31,7 +31,7 @@ condition:
|
|||||||
for:
|
for:
|
||||||
minutes: 5
|
minutes: 5
|
||||||
- condition: state
|
- condition: state
|
||||||
entity_id: input_boolean.white_bed_occupied
|
entity_id: binary_sensor.white_bed_occupied
|
||||||
state: "on"
|
state: "on"
|
||||||
for:
|
for:
|
||||||
minutes: 5
|
minutes: 5
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ trigger:
|
|||||||
- platform: state
|
- platform: state
|
||||||
entity_id:
|
entity_id:
|
||||||
- binary_sensor.black_bed_occupied
|
- binary_sensor.black_bed_occupied
|
||||||
- input_boolean.white_bed_occupied
|
- binary_sensor.white_bed_occupied
|
||||||
to: "off"
|
to: "off"
|
||||||
for: "00:05:00"
|
for: "00:05:00"
|
||||||
|
|
||||||
@@ -67,10 +67,10 @@ condition:
|
|||||||
- condition: or
|
- condition: or
|
||||||
conditions:
|
conditions:
|
||||||
- condition: state
|
- condition: state
|
||||||
entity_id: input_boolean.white_bed_occupied
|
entity_id: binary_sensor.white_bed_occupied
|
||||||
state: "off"
|
state: "off"
|
||||||
- condition: state
|
- condition: state
|
||||||
entity_id: input_boolean.white_bed_occupied
|
entity_id: binary_sensor.white_bed_occupied
|
||||||
state: "unavailable"
|
state: "unavailable"
|
||||||
- condition: or
|
- condition: or
|
||||||
conditions:
|
conditions:
|
||||||
@@ -96,10 +96,10 @@ condition:
|
|||||||
- condition: or
|
- condition: or
|
||||||
conditions:
|
conditions:
|
||||||
- condition: state
|
- condition: state
|
||||||
entity_id: input_boolean.white_bed_occupied
|
entity_id: binary_sensor.white_bed_occupied
|
||||||
state: "off"
|
state: "off"
|
||||||
- condition: state
|
- condition: state
|
||||||
entity_id: input_boolean.white_bed_occupied
|
entity_id: binary_sensor.white_bed_occupied
|
||||||
state: "unavailable"
|
state: "unavailable"
|
||||||
action:
|
action:
|
||||||
- service: input_boolean.turn_off
|
- service: input_boolean.turn_off
|
||||||
@@ -140,10 +140,10 @@ action:
|
|||||||
- condition: or
|
- condition: or
|
||||||
conditions:
|
conditions:
|
||||||
- condition: state
|
- condition: state
|
||||||
entity_id: input_boolean.white_bed_occupied
|
entity_id: binary_sensor.white_bed_occupied
|
||||||
state: "off"
|
state: "off"
|
||||||
- condition: state
|
- condition: state
|
||||||
entity_id: input_boolean.white_bed_occupied
|
entity_id: binary_sensor.white_bed_occupied
|
||||||
state: "unavailable"
|
state: "unavailable"
|
||||||
sequence:
|
sequence:
|
||||||
- service: input_boolean.turn_off
|
- service: input_boolean.turn_off
|
||||||
@@ -170,10 +170,10 @@ action:
|
|||||||
- condition: or
|
- condition: or
|
||||||
conditions:
|
conditions:
|
||||||
- condition: state
|
- condition: state
|
||||||
entity_id: input_boolean.white_bed_occupied
|
entity_id: binary_sensor.white_bed_occupied
|
||||||
state: "off"
|
state: "off"
|
||||||
- condition: state
|
- condition: state
|
||||||
entity_id: input_boolean.white_bed_occupied
|
entity_id: binary_sensor.white_bed_occupied
|
||||||
state: "unavailable"
|
state: "unavailable"
|
||||||
sequence:
|
sequence:
|
||||||
- service: input_boolean.turn_off
|
- service: input_boolean.turn_off
|
||||||
@@ -194,10 +194,10 @@ action:
|
|||||||
- condition: or
|
- condition: or
|
||||||
conditions:
|
conditions:
|
||||||
- condition: state
|
- condition: state
|
||||||
entity_id: input_boolean.white_bed_occupied
|
entity_id: binary_sensor.white_bed_occupied
|
||||||
state: "off"
|
state: "off"
|
||||||
- condition: state
|
- condition: state
|
||||||
entity_id: input_boolean.white_bed_occupied
|
entity_id: binary_sensor.white_bed_occupied
|
||||||
state: "unavailable"
|
state: "unavailable"
|
||||||
- condition: not
|
- condition: not
|
||||||
conditions:
|
conditions:
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ trigger:
|
|||||||
for: "00:00:03"
|
for: "00:00:03"
|
||||||
|
|
||||||
- platform: state
|
- platform: state
|
||||||
entity_id: input_boolean.white_bed_occupied
|
entity_id: binary_sensor.white_bed_occupied
|
||||||
to: "off"
|
to: "off"
|
||||||
for: "00:00:03"
|
for: "00:00:03"
|
||||||
|
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ trigger:
|
|||||||
to: "off"
|
to: "off"
|
||||||
for: "00:00:03"
|
for: "00:00:03"
|
||||||
- platform: state
|
- platform: state
|
||||||
entity_id: input_boolean.white_bed_occupied
|
entity_id: binary_sensor.white_bed_occupied
|
||||||
to: "off"
|
to: "off"
|
||||||
for: "00:00:03"
|
for: "00:00:03"
|
||||||
|
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ trigger:
|
|||||||
to: "on"
|
to: "on"
|
||||||
for: "00:00:30"
|
for: "00:00:30"
|
||||||
- platform: state
|
- platform: state
|
||||||
entity_id: input_boolean.white_bed_occupied
|
entity_id: binary_sensor.white_bed_occupied
|
||||||
to: "on"
|
to: "on"
|
||||||
for: "00:00:30"
|
for: "00:00:30"
|
||||||
|
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ condition:
|
|||||||
state: "off"
|
state: "off"
|
||||||
- condition: state
|
- condition: state
|
||||||
entity_id:
|
entity_id:
|
||||||
- input_boolean.white_bed_occupied
|
- binary_sensor.white_bed_occupied
|
||||||
- binary_sensor.black_bed_occupied
|
- binary_sensor.black_bed_occupied
|
||||||
state:
|
state:
|
||||||
- "off"
|
- "off"
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ trigger:
|
|||||||
to: "off"
|
to: "off"
|
||||||
for: "00:00:05"
|
for: "00:00:05"
|
||||||
- trigger: state
|
- trigger: state
|
||||||
entity_id: input_boolean.white_bed_occupied
|
entity_id: binary_sensor.white_bed_occupied
|
||||||
from: "on"
|
from: "on"
|
||||||
to: "off"
|
to: "off"
|
||||||
for: "00:00:05"
|
for: "00:00:05"
|
||||||
|
|||||||
@@ -69,7 +69,7 @@ triggers:
|
|||||||
condition:
|
condition:
|
||||||
- alias: "Only turn the fans on if it's warm enough outside"
|
- alias: "Only turn the fans on if it's warm enough outside"
|
||||||
condition: template
|
condition: template
|
||||||
value_template: "{{ (states('sensor.lacrosse_tx141thbv2_0_temperature') | float(default=0) > 60.0) or is_state('group.ceiling_fans','on') }}"
|
value_template: "{{ (states('sensor.front_yard_thermostat_temperature') | float(default=0) > 60.0) or is_state('group.ceiling_fans','on') }}"
|
||||||
|
|
||||||
action:
|
action:
|
||||||
- alias: "Calculate fan speeds"
|
- alias: "Calculate fan speeds"
|
||||||
@@ -82,7 +82,7 @@ action:
|
|||||||
# name: Automatic Fan Speeds
|
# name: Automatic Fan Speeds
|
||||||
# entity_id: automation.automatic_fan_speeds
|
# entity_id: automation.automatic_fan_speeds
|
||||||
# message: >
|
# message: >
|
||||||
# Outdoor Air Temp: {{states('sensor.lacrosse_tx141thbv2_0_temperature') | float(default=0)}}
|
# Outdoor Air Temp: {{states('sensor.front_yard_thermostat_temperature') | float(default=0)}}
|
||||||
# Nursery Air Temp: {{states('sensor.nursery_multisensor_air_temperature') | float(default=0)}}
|
# Nursery Air Temp: {{states('sensor.nursery_multisensor_air_temperature') | float(default=0)}}
|
||||||
# Nursery Min Temp: {{states('input_number.nursery_fan_min_temp') | float(default=0)}}
|
# Nursery Min Temp: {{states('input_number.nursery_fan_min_temp') | float(default=0)}}
|
||||||
# Nursery High Temp: {{states('input_number.nursery_fan_high_temp') | float(default=0)}}
|
# Nursery High Temp: {{states('input_number.nursery_fan_high_temp') | float(default=0)}}
|
||||||
|
|||||||
@@ -1,544 +0,0 @@
|
|||||||
blueprint:
|
|
||||||
name: Aqara Magic Cube
|
|
||||||
description: Control anything using Aqara Magic Cube.
|
|
||||||
domain: automation
|
|
||||||
input:
|
|
||||||
remote:
|
|
||||||
name: Magic Cube
|
|
||||||
description: Select the Aqara Magic Cube device
|
|
||||||
selector:
|
|
||||||
device:
|
|
||||||
integration: zha
|
|
||||||
manufacturer: LUMI
|
|
||||||
flip_90:
|
|
||||||
name: Flip 90 degrees
|
|
||||||
description: 'Actions to run when cube flips 90 degrees.
|
|
||||||
|
|
||||||
This cancels all specific 90 degrees functions.
|
|
||||||
|
|
||||||
e.g From side 1 to side 2 will be the same as from side 6 to side 2'
|
|
||||||
default: false
|
|
||||||
selector:
|
|
||||||
boolean: {}
|
|
||||||
cube_flip_90:
|
|
||||||
name: Flip cube 90 degrees
|
|
||||||
description: Action to run when cube flips 90 degrees. This only works if 'Flip
|
|
||||||
90 degrees' is toggled
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
flip_180:
|
|
||||||
name: Flip 180 degrees
|
|
||||||
description: 'Actions to run when cube flips 180 degrees.
|
|
||||||
|
|
||||||
This cancels all specific 180 degrees functions
|
|
||||||
|
|
||||||
e.g From side 1 to side 4 will be the same as from side 5 to side 2'
|
|
||||||
default: false
|
|
||||||
selector:
|
|
||||||
boolean: {}
|
|
||||||
cube_flip_180:
|
|
||||||
name: Flip cube 180 degrees
|
|
||||||
description: Action to run when cube flips 180 degrees. This only works if 'Flip
|
|
||||||
180 degrees' is toggled
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
slide_any_side:
|
|
||||||
name: Slide any side
|
|
||||||
description: 'Actions to run when cube slides on any side.
|
|
||||||
|
|
||||||
This cancels all specific ''slide'' functions
|
|
||||||
|
|
||||||
e.g Slide on side 1 will be the same as slide on side 2'
|
|
||||||
default: false
|
|
||||||
selector:
|
|
||||||
boolean: {}
|
|
||||||
cube_slide_any:
|
|
||||||
name: Slide cube on any side
|
|
||||||
description: Action to run when cube slides on any slide. This only works if
|
|
||||||
'Slide any side' is toggled
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
knock_any_side:
|
|
||||||
name: Knock on any side
|
|
||||||
description: 'Actions to run when knocking cube regardless of the side.
|
|
||||||
|
|
||||||
This cancels all specific ''knock'' functions
|
|
||||||
|
|
||||||
e.g Knock on side 1 will be the same as knocking side 2'
|
|
||||||
default: false
|
|
||||||
selector:
|
|
||||||
boolean: {}
|
|
||||||
cube_knock_any:
|
|
||||||
name: Knock cube on any side
|
|
||||||
description: Action to run when knocking cube on any side. This only works if
|
|
||||||
'Knock on any side' is toggled
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
one_to_two:
|
|
||||||
name: From side 1 to side 2
|
|
||||||
description: Action to run when cube goes from side 1 to side 2
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
one_to_three:
|
|
||||||
name: From side 1 to side 3
|
|
||||||
description: Action to run when cube goes from side 1 to side 3
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
one_to_four:
|
|
||||||
name: From side 1 to side 4
|
|
||||||
description: Action to run when cube goes from side 1 to side 4
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
one_to_five:
|
|
||||||
name: From side 1 to side 5
|
|
||||||
description: Action to run when cube goes from side 1 to side 5
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
one_to_six:
|
|
||||||
name: From side 1 to side 6
|
|
||||||
description: Action to run when cube goes from side 1 to side 6
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
two_to_one:
|
|
||||||
name: From side 2 to side 1
|
|
||||||
description: Action to run when cube goes from side 2 to side 1
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
two_to_three:
|
|
||||||
name: From side 2 to side 3
|
|
||||||
description: Action to run when cube goes from side 2 to side 3
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
two_to_four:
|
|
||||||
name: From side 2 to side 4
|
|
||||||
description: Action to run when cube goes from side 2 to side 4
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
two_to_five:
|
|
||||||
name: From side 2 to side 5
|
|
||||||
description: Action to run when cube goes from side 2 to side 5
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
two_to_six:
|
|
||||||
name: From side 2 to side 6
|
|
||||||
description: Action to run when cube goes from side 2 to side 6
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
three_to_one:
|
|
||||||
name: From side 3 to side 1
|
|
||||||
description: Action to run when cube goes from side 3 to side 1
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
three_to_two:
|
|
||||||
name: From side 3 to side 2
|
|
||||||
description: Action to run when cube goes from side 3 to side 2
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
three_to_four:
|
|
||||||
name: From side 3 to side 4
|
|
||||||
description: Action to run when cube goes from side 3 to side 4
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
three_to_five:
|
|
||||||
name: From side 3 to side 5
|
|
||||||
description: Action to run when cube goes from side 3 to side 5
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
three_to_six:
|
|
||||||
name: From side 3 to side 6
|
|
||||||
description: Action to run when cube goes from side 3 to side 6
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
four_to_one:
|
|
||||||
name: From side 4 to side 1
|
|
||||||
description: Action to run when cube goes from side 4 to side 1
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
four_to_two:
|
|
||||||
name: From side 4 to side 2
|
|
||||||
description: Action to run when cube goes from side 4 to side 2
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
four_to_three:
|
|
||||||
name: From side 4 to side 3
|
|
||||||
description: Action to run when cube goes from side 4 to side 3
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
four_to_five:
|
|
||||||
name: From side 4 to side 5
|
|
||||||
description: Action to run when cube goes from side 4 to side 5
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
four_to_six:
|
|
||||||
name: From side 4 to side 6
|
|
||||||
description: Action to run when cube goes from side 4 to side 6
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
five_to_one:
|
|
||||||
name: From side 5 to side 1
|
|
||||||
description: Action to run when cube goes from side 5 to side 1
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
five_to_two:
|
|
||||||
name: From side 5 to side 2
|
|
||||||
description: Action to run when cube goes from side 5 to side 2
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
five_to_three:
|
|
||||||
name: From side 5 to side 3
|
|
||||||
description: Action to run when cube goes from side 5 to side 3
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
five_to_four:
|
|
||||||
name: From side 5 to side 4
|
|
||||||
description: Action to run when cube goes from side 5 to side 4
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
five_to_six:
|
|
||||||
name: From side 5 to side 6
|
|
||||||
description: Action to run when cube goes from side 5 to side 6
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
six_to_one:
|
|
||||||
name: From side 6 to side 1
|
|
||||||
description: Action to run when cube goes from side 6 to side 1
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
six_to_two:
|
|
||||||
name: From side 6 to side 2
|
|
||||||
description: Action to run when cube goes from side 6 to side 2
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
six_to_three:
|
|
||||||
name: From side 6 to side 3
|
|
||||||
description: Action to run when cube goes from side 6 to side 3
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
six_to_four:
|
|
||||||
name: From side 6 to side 4
|
|
||||||
description: Action to run when cube goes from side 6 to side 4
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
six_to_five:
|
|
||||||
name: From side 6 to side 5
|
|
||||||
description: Action to run when cube goes from side 6 to side 5
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
one_to_one:
|
|
||||||
name: Knock - Side 1
|
|
||||||
description: Action to run when knocking on side 1
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
two_to_two:
|
|
||||||
name: Knock - Side 2
|
|
||||||
description: Action to run when knocking on side 2
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
three_to_three:
|
|
||||||
name: Knock - Side 3
|
|
||||||
description: Action to run when knocking on side 3
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
four_to_four:
|
|
||||||
name: Knock - Side 4
|
|
||||||
description: Action to run when knocking on side 4
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
five_to_five:
|
|
||||||
name: Knock - Side 5
|
|
||||||
description: Action to run when knocking on side 5
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
six_to_six:
|
|
||||||
name: Knock - Side 6
|
|
||||||
description: Action to run when knocking on side 6
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
slide_on_one:
|
|
||||||
name: Slide - Side 1 up
|
|
||||||
description: Action to run when slides with Side 1 up
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
slide_on_two:
|
|
||||||
name: Slide - Side 2 up
|
|
||||||
description: Action to run when slides with Side 2 up
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
slide_on_three:
|
|
||||||
name: Slide - Side 3 up
|
|
||||||
description: Action to run when slides with Side 3 up
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
slide_on_four:
|
|
||||||
name: Slide - Side 4 up
|
|
||||||
description: Action to run when slides with Side 4 up
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
slide_on_five:
|
|
||||||
name: Slide - Side 5 up
|
|
||||||
description: Action to run when slides with Side 5 up
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
slide_on_six:
|
|
||||||
name: Slide - Side 6 up
|
|
||||||
description: Action to run when slides with Side 6 up
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
cube_wake:
|
|
||||||
name: Wake up the cube
|
|
||||||
description: Action to run when cube wakes up
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
cube_drop:
|
|
||||||
name: Cube drops
|
|
||||||
description: Action to run when cube drops
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
cube_shake:
|
|
||||||
name: Shake cube
|
|
||||||
description: Action to run when you shake the cube
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
rotate_right:
|
|
||||||
name: Rotate right
|
|
||||||
description: Action to run when cube rotates right
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
rotate_left:
|
|
||||||
name: Rotate left
|
|
||||||
description: Action to run when cube rotates left
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
source_url: https://community.home-assistant.io/t/aqara-magic-cube-zha-51-actions/270829
|
|
||||||
mode: restart
|
|
||||||
max_exceeded: silent
|
|
||||||
trigger:
|
|
||||||
- platform: event
|
|
||||||
event_type: zha_event
|
|
||||||
event_data:
|
|
||||||
device_id: !input 'remote'
|
|
||||||
action:
|
|
||||||
- variables:
|
|
||||||
command: '{{ trigger.event.data.command }}'
|
|
||||||
value: '{{ trigger.event.data.args.value }}'
|
|
||||||
flip_degrees: '{{ trigger.event.data.args.flip_degrees }}'
|
|
||||||
relative_degrees: '{{ trigger.event.data.args.relative_degrees }}'
|
|
||||||
flip_90: !input 'flip_90'
|
|
||||||
flip_180: !input 'flip_180'
|
|
||||||
slide_any_side: !input 'slide_any_side'
|
|
||||||
knock_any_side: !input 'knock_any_side'
|
|
||||||
flip90: 64
|
|
||||||
flip180: 128
|
|
||||||
slide: 256
|
|
||||||
knock: 512
|
|
||||||
shake: 0
|
|
||||||
drop: 3
|
|
||||||
activated_face: "\n{% if command == \"slide\" or command == \"knock\" %}\n\n \
|
|
||||||
\ {% if trigger.event.data.args.activated_face == 1 %} 1\n\n {% elif trigger.event.data.args.activated_face\
|
|
||||||
\ == 2 %} 5\n\n {% elif trigger.event.data.args.activated_face == 3 %} 6\n\n\
|
|
||||||
\ {% elif trigger.event.data.args.activated_face == 4 %} 4\n\n {% elif trigger.event.data.args.activated_face\
|
|
||||||
\ == 5 %} 2\n\n {% elif trigger.event.data.args.activated_face == 6 %} 3\n\n\
|
|
||||||
\ {% endif %}\n\n{% elif command == 'flip' %}\n\n {{ trigger.event.data.args.activated_face\
|
|
||||||
\ | int }}\n\n{% endif %}\n"
|
|
||||||
from_face: "\n{% if command == \"flip\" and flip_degrees == 90 %}\n\n {{ ((value\
|
|
||||||
\ - flip90 - (trigger.event.data.args.activated_face - 1)) / 8) + 1 | int }}\n\
|
|
||||||
\n{% endif %}\n"
|
|
||||||
- choose:
|
|
||||||
- conditions:
|
|
||||||
- '{{ command == ''rotate_right'' }}'
|
|
||||||
sequence: !input 'rotate_right'
|
|
||||||
- conditions:
|
|
||||||
- '{{ command == ''rotate_left'' }}'
|
|
||||||
sequence: !input 'rotate_left'
|
|
||||||
- conditions:
|
|
||||||
- '{{ command == ''checkin'' }}'
|
|
||||||
sequence: !input 'cube_wake'
|
|
||||||
- conditions:
|
|
||||||
- '{{ value == shake }}'
|
|
||||||
sequence: !input 'cube_shake'
|
|
||||||
- conditions:
|
|
||||||
- '{{ value == drop }}'
|
|
||||||
sequence: !input 'cube_drop'
|
|
||||||
- conditions:
|
|
||||||
- '{{ command == ''knock'' and knock_any_side }}'
|
|
||||||
sequence: !input 'cube_knock_any'
|
|
||||||
- conditions:
|
|
||||||
- '{{ command == ''slide'' and slide_any_side }}'
|
|
||||||
sequence: !input 'cube_slide_any'
|
|
||||||
- conditions:
|
|
||||||
- '{{ flip_degrees == 90 and flip_90 }}'
|
|
||||||
sequence: !input 'cube_flip_90'
|
|
||||||
- conditions:
|
|
||||||
- '{{ flip_degrees == 180 and flip_180 }}'
|
|
||||||
sequence: !input 'cube_flip_180'
|
|
||||||
- conditions:
|
|
||||||
- '{{ flip_degrees == 90 and activated_face == 1 }}'
|
|
||||||
sequence:
|
|
||||||
- choose:
|
|
||||||
- conditions: '{{ from_face == 2 }}'
|
|
||||||
sequence: !input 'two_to_one'
|
|
||||||
- conditions: '{{ from_face == 3 }}'
|
|
||||||
sequence: !input 'three_to_one'
|
|
||||||
- conditions: '{{ from_face == 5 }}'
|
|
||||||
sequence: !input 'five_to_one'
|
|
||||||
- conditions: '{{ from_face == 6 }}'
|
|
||||||
sequence: !input 'six_to_one'
|
|
||||||
- conditions:
|
|
||||||
- '{{ flip_degrees == 90 and activated_face == 2 }}'
|
|
||||||
sequence:
|
|
||||||
- choose:
|
|
||||||
- conditions: '{{ from_face == 1 }}'
|
|
||||||
sequence: !input 'one_to_two'
|
|
||||||
- conditions: '{{ from_face == 3 }}'
|
|
||||||
sequence: !input 'three_to_two'
|
|
||||||
- conditions: '{{ from_face == 4 }}'
|
|
||||||
sequence: !input 'four_to_two'
|
|
||||||
- conditions: '{{ from_face == 6 }}'
|
|
||||||
sequence: !input 'six_to_two'
|
|
||||||
- conditions:
|
|
||||||
- '{{ flip_degrees == 90 and activated_face == 3 }}'
|
|
||||||
sequence:
|
|
||||||
- choose:
|
|
||||||
- conditions: '{{ from_face == 1 }}'
|
|
||||||
sequence: !input 'one_to_three'
|
|
||||||
- conditions: '{{ from_face == 2 }}'
|
|
||||||
sequence: !input 'two_to_three'
|
|
||||||
- conditions: '{{ from_face == 4 }}'
|
|
||||||
sequence: !input 'four_to_three'
|
|
||||||
- conditions: '{{ from_face == 5 }}'
|
|
||||||
sequence: !input 'five_to_three'
|
|
||||||
- conditions:
|
|
||||||
- '{{ flip_degrees == 90 and activated_face == 4 }}'
|
|
||||||
sequence:
|
|
||||||
- choose:
|
|
||||||
- conditions: '{{ from_face == 2 }}'
|
|
||||||
sequence: !input 'two_to_four'
|
|
||||||
- conditions: '{{ from_face == 3 }}'
|
|
||||||
sequence: !input 'three_to_four'
|
|
||||||
- conditions: '{{ from_face == 5 }}'
|
|
||||||
sequence: !input 'five_to_four'
|
|
||||||
- conditions: '{{ from_face == 6 }}'
|
|
||||||
sequence: !input 'six_to_four'
|
|
||||||
- conditions:
|
|
||||||
- '{{ flip_degrees == 90 and activated_face == 5 }}'
|
|
||||||
sequence:
|
|
||||||
- choose:
|
|
||||||
- conditions: '{{ from_face == 1 }}'
|
|
||||||
sequence: !input 'one_to_five'
|
|
||||||
- conditions: '{{ from_face == 3 }}'
|
|
||||||
sequence: !input 'three_to_five'
|
|
||||||
- conditions: '{{ from_face == 4 }}'
|
|
||||||
sequence: !input 'four_to_five'
|
|
||||||
- conditions: '{{ from_face == 6 }}'
|
|
||||||
sequence: !input 'six_to_five'
|
|
||||||
- conditions:
|
|
||||||
- '{{ flip_degrees == 90 and activated_face == 6 }}'
|
|
||||||
sequence:
|
|
||||||
- choose:
|
|
||||||
- conditions: '{{ from_face == 1 }}'
|
|
||||||
sequence: !input 'one_to_six'
|
|
||||||
- conditions: '{{ from_face == 2 }}'
|
|
||||||
sequence: !input 'two_to_six'
|
|
||||||
- conditions: '{{ from_face == 4 }}'
|
|
||||||
sequence: !input 'four_to_six'
|
|
||||||
- conditions: '{{ from_face == 5 }}'
|
|
||||||
sequence: !input 'five_to_six'
|
|
||||||
- conditions:
|
|
||||||
- '{{ value == flip180 + activated_face - 1 }}'
|
|
||||||
sequence:
|
|
||||||
- choose:
|
|
||||||
- conditions: '{{ activated_face == 1 }}'
|
|
||||||
sequence: !input 'four_to_one'
|
|
||||||
- conditions: '{{ activated_face == 2 }}'
|
|
||||||
sequence: !input 'five_to_two'
|
|
||||||
- conditions: '{{ activated_face == 3 }}'
|
|
||||||
sequence: !input 'six_to_three'
|
|
||||||
- conditions: '{{ activated_face == 4 }}'
|
|
||||||
sequence: !input 'one_to_four'
|
|
||||||
- conditions: '{{ activated_face == 5 }}'
|
|
||||||
sequence: !input 'two_to_five'
|
|
||||||
- conditions: '{{ activated_face == 6 }}'
|
|
||||||
sequence: !input 'three_to_six'
|
|
||||||
- conditions:
|
|
||||||
- '{{ value == knock + activated_face - 1 }}'
|
|
||||||
sequence:
|
|
||||||
- choose:
|
|
||||||
- conditions: '{{ activated_face == 1 }}'
|
|
||||||
sequence: !input 'one_to_one'
|
|
||||||
- conditions: '{{ activated_face == 2 }}'
|
|
||||||
sequence: !input 'two_to_two'
|
|
||||||
- conditions: '{{ activated_face == 3 }}'
|
|
||||||
sequence: !input 'three_to_three'
|
|
||||||
- conditions: '{{ activated_face == 4 }}'
|
|
||||||
sequence: !input 'four_to_four'
|
|
||||||
- conditions: '{{ activated_face == 5 }}'
|
|
||||||
sequence: !input 'five_to_five'
|
|
||||||
- conditions: '{{ activated_face == 6 }}'
|
|
||||||
sequence: !input 'six_to_six'
|
|
||||||
- conditions:
|
|
||||||
- '{{ value == slide + activated_face - 1 }}'
|
|
||||||
sequence:
|
|
||||||
- choose:
|
|
||||||
- conditions: '{{ activated_face == 1 }}'
|
|
||||||
sequence: !input 'slide_on_one'
|
|
||||||
- conditions: '{{ activated_face == 2 }}'
|
|
||||||
sequence: !input 'slide_on_two'
|
|
||||||
- conditions: '{{ activated_face == 3 }}'
|
|
||||||
sequence: !input 'slide_on_three'
|
|
||||||
- conditions: '{{ activated_face == 4 }}'
|
|
||||||
sequence: !input 'slide_on_four'
|
|
||||||
- conditions: '{{ activated_face == 5 }}'
|
|
||||||
sequence: !input 'slide_on_five'
|
|
||||||
- conditions: '{{ activated_face == 6 }}'
|
|
||||||
sequence: !input 'slide_on_six'
|
|
||||||
@@ -1,787 +0,0 @@
|
|||||||
blueprint:
|
|
||||||
name: Aqara Magic Cube Zigbee2MQTT - 2022-05-05
|
|
||||||
description: "This Blueprint uses a Zigbee2MQTT built sensor to sort out the 38(+54)
|
|
||||||
unique commands available from the Xiaomi Magic Cube Remote. (Some unique commands
|
|
||||||
are available thru templating only. See the related document.)\nThe split out
|
|
||||||
of functions gives you the ability to assign local scripts or functions to do
|
|
||||||
the things you want the remote to do.\nFunctions that are left empty will simply
|
|
||||||
do nothing.\n\n### \U0001F34E There is a set of 36 event functions that will trigger
|
|
||||||
on specific actions on specific sides that are listed as **Group 1 actions \U0001F34E**.\n\n###
|
|
||||||
\U0001F34A There is a set of 6 event functions that will trigger on specific actions
|
|
||||||
on *ANY* side that are listed as **Group 2 sctions \U0001F34A**.\n\n### \U0001F350
|
|
||||||
There is a set of 30 event functions that will trigger on cube flips to & froma
|
|
||||||
specific sides that are listed as **Group 3 sctions \U0001F350**.\n\n### \U0001F369
|
|
||||||
There are 2 actions (shake and drop) that only occur once and are OK to be combined
|
|
||||||
with any other group.\n\nPlease be aware that ALL actions except the 2 listed
|
|
||||||
above,\n\U0001F369 will trigger an action in **ALL 3 groups at the same time**
|
|
||||||
every time. Therefore I suggest if you just have a couple of things you want this
|
|
||||||
remote to do that you choose the *ANY / Group 2 / \U0001F34A* events.\nIf you
|
|
||||||
want more than a few events, you should select actions in **Group 1 / \U0001F34E
|
|
||||||
OR Group 3 / \U0001F350**.\nWith careful selection you can use mixed groups, but
|
|
||||||
you run the risk of a single cube action triggering more than 1 Home Assistant
|
|
||||||
action and making a mess of things \U0001F371.\n\n#### NOTICE: This cube *can*
|
|
||||||
be triggered 124 ways, but only 38(+54) of them are unique (with templating).\n\nThere
|
|
||||||
is sample code to make the template sensor in the help file on GitHib named [Zigbee2MQTT
|
|
||||||
- Xiaomi Cube Controller.md](https://github.com/SirGoodenough/HA_Blueprints/blob/master/Automations/Zigbee2MQTT%20-%20Xiaomi%20Cube%20Controller.md)
|
|
||||||
& in the [community page related to this](https://community.home-assistant.io/t/zigbee2mqtt-xiaomi-cube-controller/393203).\n\nWithin
|
|
||||||
this blueprint there is an event handler that will latch the last command that
|
|
||||||
the blueprint finds and sends that to the event buss. From there a simple Template
|
|
||||||
sensor can grab it and show you the last action sent. Thie will help when setting
|
|
||||||
up new functions and to troubleshoot strange behaviours.\n\n> This was forked
|
|
||||||
from https://community.home-assistant.io/t/z2m-xiaomi-cube-controller/263006 1.2
|
|
||||||
project authored by luckypoppy and the friends he pulled together to create the
|
|
||||||
base. I sincerely thank Him (Them) for their work. I felt there needed to be more
|
|
||||||
documentation for rookie users to properly set this up. I had quite a few questions
|
|
||||||
and when I saw a few questions in that chat from people struggling, I wanted to
|
|
||||||
help. I also had a better idea for troubleshooting info.\n"
|
|
||||||
source_url: https://github.com/SirGoodenough/HA_Blueprints/blob/master/Automations/Zigbee2MQTT%20-%20Xiaomi%20Cube%20Controller.yaml
|
|
||||||
domain: automation
|
|
||||||
homeassistant:
|
|
||||||
min_version: 2022.5.2
|
|
||||||
input:
|
|
||||||
remote:
|
|
||||||
name: Remote
|
|
||||||
description: 'The entity to put here is the sensor that Z2M imported which is
|
|
||||||
named like this> sensor.XXYour_HameXX_action.
|
|
||||||
|
|
||||||
The other 4 sensors can be disabled, they will not be used.'
|
|
||||||
selector:
|
|
||||||
entity:
|
|
||||||
integration: mqtt
|
|
||||||
domain: sensor
|
|
||||||
multiple: false
|
|
||||||
slide_face_0:
|
|
||||||
name: "Group 1 actions \U0001F34E Slide the cube with face 0 up"
|
|
||||||
description: Face 0 is the one with the 'Aqara' LOGO
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
doubletap_face_0:
|
|
||||||
name: "Group 1 actions \U0001F34E Double tap the cube with face 0 up"
|
|
||||||
description: Face 0 is the one with the 'Aqara' LOGO
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
flipped90_face_0:
|
|
||||||
name: "Group 1 actions \U0001F34E Flip the cube 90 degrees to face 0"
|
|
||||||
description: Face 0 is the one with the 'Aqara' LOGO
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
flipped180_face_0:
|
|
||||||
name: "Group 1 actions \U0001F34E Flip the cube 180 degrees to face 0"
|
|
||||||
description: '**NOTE:** This action is trick to master, and should be used sparingly...
|
|
||||||
|
|
||||||
Face 0 is the one with the ''Aqara'' LOGO'
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
rotate_cw_face_0:
|
|
||||||
name: "Group 1 actions \U0001F34E Rotate cube clockwise with face 0 up"
|
|
||||||
description: Face 0 is the one with the 'Aqara' LOGO
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
rotate_ccw_face_0:
|
|
||||||
name: "Group 1 actions \U0001F34E Rotate cube counter clockwise with face 0
|
|
||||||
up"
|
|
||||||
description: Face 0 is the one with the 'Aqara' LOGO
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
slide_face_1:
|
|
||||||
name: "Group 1 actions \U0001F34E Slide the cube with face 1 up"
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
doubletap_face_1:
|
|
||||||
name: "Group 1 actions \U0001F34E Double tap the cube with face 1 up"
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
flipped90_face_1:
|
|
||||||
name: "Group 1 actions \U0001F34E Flip the cube 90 degrees to face 1"
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
flipped180_face_1:
|
|
||||||
name: "Group 1 actions \U0001F34E Flip the cube 180 degrees to face 1"
|
|
||||||
description: '**NOTE:** This action is trick to master, and should be used sparingly...'
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
rotate_cw_face_1:
|
|
||||||
name: "Group 1 actions \U0001F34E Rotate cube clockwise with face 1 up"
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
rotate_ccw_face_1:
|
|
||||||
name: "Group 1 actions \U0001F34E Rotate cube counter clockwise with face 1
|
|
||||||
up"
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
slide_face_2:
|
|
||||||
name: "Group 1 actions \U0001F34E Slide the cube with face 2 up"
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
doubletap_face_2:
|
|
||||||
name: "Group 1 actions \U0001F34E Double tap the cube with face 2 up"
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
flipped90_face_2:
|
|
||||||
name: "Group 1 actions \U0001F34E Flip the cube 90 degrees to face 2"
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
flipped180_face_2:
|
|
||||||
name: "Group 1 actions \U0001F34E Flip the cube 180 degrees to face 2"
|
|
||||||
description: '**NOTE:** This action is trick to master, and should be used sparingly...'
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
rotate_cw_face_2:
|
|
||||||
name: "Group 1 actions \U0001F34E Rotate cube clockwise with face 2 up"
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
rotate_ccw_face_2:
|
|
||||||
name: "Group 1 actions \U0001F34E Rotate cube counter clockwise with face 2
|
|
||||||
up"
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
slide_face_3:
|
|
||||||
name: "Group 1 actions \U0001F34E Slide the cube with face 3 up"
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
doubletap_face_3:
|
|
||||||
name: "Group 1 actions \U0001F34E Double tap the cube with face 3 up"
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
flipped90_face_3:
|
|
||||||
name: "Group 1 actions \U0001F34E Flip the cube 90 degrees to face 3"
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
flipped180_face_3:
|
|
||||||
name: "Group 1 actions \U0001F34E Flip the cube 180 degrees to face 3"
|
|
||||||
description: '**NOTE:** This action is trick to master, and should be used sparingly...'
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
rotate_cw_face_3:
|
|
||||||
name: "Group 1 actions \U0001F34E Rotate cube clockwise with face 3 up"
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
rotate_ccw_face_3:
|
|
||||||
name: "Group 1 actions \U0001F34E Rotate cube counter clockwise with face 3
|
|
||||||
up"
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
slide_face_4:
|
|
||||||
name: "Group 1 actions \U0001F34E Slide the cube with face 4 up"
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
doubletap_face_4:
|
|
||||||
name: "Group 1 actions \U0001F34E Double tap the cube with face 4 up"
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
flipped90_face_4:
|
|
||||||
name: "Group 1 actions \U0001F34E Flip the cube 90 degrees to face 4"
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
flipped180_face_4:
|
|
||||||
name: "Group 1 actions \U0001F34E Flip the cube 180 degrees to face 4"
|
|
||||||
description: '**NOTE:** This action is trick to master, and should be used sparingly...'
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
rotate_cw_face_4:
|
|
||||||
name: "Group 1 actions \U0001F34E Rotate cube clockwise with face 4 up"
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
rotate_ccw_face_4:
|
|
||||||
name: "Group 1 actions \U0001F34E Rotate cube counter clockwise with face 4
|
|
||||||
up"
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
slide_face_5:
|
|
||||||
name: "Group 1 actions \U0001F34E Slide the cube with face 5 up"
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
doubletap_face_5:
|
|
||||||
name: "Group 1 actions \U0001F34E Double tap the cube with face 5 up"
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
flipped90_face_5:
|
|
||||||
name: "Group 1 actions \U0001F34E Flip the cube 90 degrees to face 5"
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
flipped180_face_5:
|
|
||||||
name: "Group 1 actions \U0001F34E Flip the cube 180 degrees to face 5"
|
|
||||||
description: '**NOTE:** This action is trick to master, and should be used sparingly...'
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
rotate_cw_face_5:
|
|
||||||
name: "Group 1 actions \U0001F34E Rotate cube clockwise with face 5 up"
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
rotate_ccw_face_5:
|
|
||||||
name: "Group 1 actions \U0001F34E Rotate cube counter clockwise with face 5
|
|
||||||
up"
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
shake:
|
|
||||||
name: "Shake the cube \U0001F369"
|
|
||||||
description: 'This trigger only occurs once in the set-up.
|
|
||||||
|
|
||||||
It can be combined in any group.'
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
fall:
|
|
||||||
name: "Drop the cube \U0001F369"
|
|
||||||
description: 'This trigger only occurs once in the set-up.
|
|
||||||
|
|
||||||
It can be combined in any group.'
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
slide_any:
|
|
||||||
name: "Group 2 actions \U0001F34A Slide the cube with any side"
|
|
||||||
description: "Side doesn't matter on this one.\n**!!Warning!!** The automations
|
|
||||||
for the specific side will also trigger. \U0001F34E\U0001F350\nI suggest using
|
|
||||||
only one of the three groups of triggers, not multiple groups..."
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
doubletap_any:
|
|
||||||
name: "Group 2 actions \U0001F34A Double tap the cube with any side"
|
|
||||||
description: "Side doesn't matter on this one.\n**!!Warning!!** The automations
|
|
||||||
for the specific side will also trigger. \U0001F34E\U0001F350\nI suggest using
|
|
||||||
only one of the three groups of triggers, not multiple groups..."
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
flipped90_any:
|
|
||||||
name: "Group 2 actions \U0001F34A Flip the cube 90 degrees to any side"
|
|
||||||
description: "Side doesn't matter on this one.\n**!!Warning!!** The automations
|
|
||||||
for the specific side will also trigger. \U0001F34E\U0001F350\nI suggest using
|
|
||||||
only one of the three groups of triggers, not multiple groups..."
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
flipped180_any:
|
|
||||||
name: "Group 2 actions \U0001F34A Flip the cube 180 degrees any side"
|
|
||||||
description: "NOTE: This action is trick to master, and should be used sparingly...
|
|
||||||
Side doesn't matter on this one.\n**!!Warning!!** The automations for the
|
|
||||||
specific side will also trigger. \U0001F34E\U0001F350\nI suggest using only
|
|
||||||
one of the three groups of triggers, not multiple groups..."
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
rotate_cw_any:
|
|
||||||
name: "Group 2 actions \U0001F34A Rotate cube clockwise with any side"
|
|
||||||
description: "Side doesn't matter on this one.\n**!!Warning!!** The automations
|
|
||||||
for the specific side will also trigger. \U0001F34E\U0001F350\nI suggest using
|
|
||||||
only one of the three groups of triggers, not multiple groups..."
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
rotate_ccw_any:
|
|
||||||
name: "Group 2 actions \U0001F34A Rotate cube counter clockwise with any side"
|
|
||||||
description: "Side doesn't matter on this one.\n**!!Warning!!** The automations
|
|
||||||
for the specific side will also trigger. \U0001F34E\U0001F350\nI suggest using
|
|
||||||
only one of the three groups of triggers, not multiple groups..."
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
0_from_1:
|
|
||||||
name: "Group 3 actions \U0001F350 Flip the cube to side 0 from side 1"
|
|
||||||
description: "**!!Warning!!** The flip 90 automations \U0001F34E for side 0
|
|
||||||
and the ANY \U0001F34A automations will also trigger.\nI suggest using only
|
|
||||||
one of the three groups of triggers, not multiple groups..."
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
0_from_2:
|
|
||||||
name: "Group 3 actions \U0001F350 Flip the cube to side 0 from side 2"
|
|
||||||
description: "**!!Warning!!** The flip 90 automations \U0001F34E for side 0
|
|
||||||
and the ANY \U0001F34A automations will also trigger.\nI suggest using only
|
|
||||||
one of the three groups of triggers, not multiple groups..."
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
0_from_3:
|
|
||||||
name: "Group 3 actions \U0001F350 Flip the cube to side 0 from side 3"
|
|
||||||
description: "**!!Warning!!** The flip 180 automations \U0001F34E for side 0
|
|
||||||
and the ANY \U0001F34A automations will also trigger.\nI suggest using only
|
|
||||||
one of the three groups of triggers, not multiple groups..."
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
0_from_4:
|
|
||||||
name: "Group 3 actions \U0001F350 Flip the cube to side 0 from side 4"
|
|
||||||
description: "**!!Warning!!** The flip 90 automations \U0001F34E for side 0
|
|
||||||
and the ANY \U0001F34A automations will also trigger.\nI suggest using only
|
|
||||||
one of the three groups of triggers, not multiple groups..."
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
0_from_5:
|
|
||||||
name: "Group 3 actions \U0001F350 Flip the cube to side 0 from side 5"
|
|
||||||
description: "**!!Warning!!** The flip 90 automations \U0001F34E for side 0
|
|
||||||
and the ANY \U0001F34A automations will also trigger.\nI suggest using only
|
|
||||||
one of the three groups of triggers, not multiple groups..."
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
1_from_0:
|
|
||||||
name: "Group 3 actions \U0001F350 Flip the cube to side 1 from side 0"
|
|
||||||
description: "**!!Warning!!** The flip 90 automations \U0001F34E for side 1
|
|
||||||
and the ANY \U0001F34A automations will also trigger.\nI suggest using only
|
|
||||||
one of the three groups of triggers, not multiple groups..."
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
1_from_2:
|
|
||||||
name: "Group 3 actions \U0001F350 Flip the cube to side 1 from side 2"
|
|
||||||
description: "**!!Warning!!** The flip 90 automations \U0001F34E for side 1
|
|
||||||
and the ANY \U0001F34A automations will also trigger.\nI suggest using only
|
|
||||||
one of the three groups of triggers, not multiple groups..."
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
1_from_3:
|
|
||||||
name: "Group 3 actions \U0001F350 Flip the cube to side 1 from side 3"
|
|
||||||
description: "**!!Warning!!** The flip 90 automations \U0001F34E for side 1
|
|
||||||
and the ANY \U0001F34A automations will also trigger.\nI suggest using only
|
|
||||||
one of the three groups of triggers, not multiple groups..."
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
1_from_4:
|
|
||||||
name: "Group 3 actions \U0001F350 Flip the cube to side 1 from side 4"
|
|
||||||
description: "**!!Warning!!** The flip 180 automations \U0001F34E for side 1
|
|
||||||
and the ANY \U0001F34A automations will also trigger.\nI suggest using only
|
|
||||||
one of the three groups of triggers, not multiple groups..."
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
1_from_5:
|
|
||||||
name: "Group 3 actions \U0001F350 Flip the cube to side 1 from side 5"
|
|
||||||
description: "**!!Warning!!** The flip 90 automations \U0001F34E for side 1
|
|
||||||
and the ANY \U0001F34A automations will also trigger.\nI suggest using only
|
|
||||||
one of the three groups of triggers, not multiple groups..."
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
2_from_0:
|
|
||||||
name: "Group 3 actions \U0001F350 Flip the cube to side 2 from side 0"
|
|
||||||
description: "**!!Warning!!** The flip 90 automations \U0001F34E for side 2
|
|
||||||
and the ANY \U0001F34A automations will also trigger.\nI suggest using only
|
|
||||||
one of the three groups of triggers, not multiple groups..."
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
2_from_1:
|
|
||||||
name: "Group 3 actions \U0001F350 Flip the cube to side 2 from side 1"
|
|
||||||
description: "**!!Warning!!** The flip 90 automations \U0001F34E for side 2
|
|
||||||
and the ANY \U0001F34A automations will also trigger.\nI suggest using only
|
|
||||||
one of the three groups of triggers, not multiple groups..."
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
2_from_3:
|
|
||||||
name: "Group 3 actions \U0001F350 Flip the cube to side 2 from side 3"
|
|
||||||
description: "**!!Warning!!** The flip 90 automations \U0001F34E for side 2
|
|
||||||
and the ANY \U0001F34A automations will also trigger.\nI suggest using only
|
|
||||||
one of the three groups of triggers, not multiple groups..."
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
2_from_4:
|
|
||||||
name: "Group 3 actions \U0001F350 Flip the cube to side 2 from side 4"
|
|
||||||
description: "**!!Warning!!** The flip 90 automations \U0001F34E for side 2
|
|
||||||
and the ANY \U0001F34A automations will also trigger.\nI suggest using only
|
|
||||||
one of the three groups of triggers, not multiple groups..."
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
2_from_5:
|
|
||||||
name: "Group 3 actions \U0001F350 Flip the cube to side 2 from side 5"
|
|
||||||
description: "**!!Warning!!** The flip 180 automations \U0001F34E for side 2
|
|
||||||
and the ANY \U0001F34A automations will also trigger.\nI suggest using only
|
|
||||||
one of the three groups of triggers, not multiple groups..."
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
3_from_0:
|
|
||||||
name: "Group 3 actions \U0001F350 Flip the cube to side 3 from side 0"
|
|
||||||
description: "**!!Warning!!** The flip 180 automations \U0001F34E for side 3
|
|
||||||
and the ANY \U0001F34A automations will also trigger.\nI suggest using only
|
|
||||||
one of the three groups of triggers, not multiple groups..."
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
3_from_1:
|
|
||||||
name: "Group 3 actions \U0001F350 Flip the cube to side 3 from side 1"
|
|
||||||
description: "**!!Warning!!** The flip 90 automations \U0001F34E for side 3
|
|
||||||
and the ANY \U0001F34A automations will also trigger.\nI suggest using only
|
|
||||||
one of the three groups of triggers, not multiple groups..."
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
3_from_2:
|
|
||||||
name: "Group 3 actions \U0001F350 Flip the cube to side 3 from side 2"
|
|
||||||
description: "**!!Warning!!** The flip 90 automations \U0001F34E for side 3
|
|
||||||
and the ANY \U0001F34A automations will also trigger.\nI suggest using only
|
|
||||||
one of the three groups of triggers, not multiple groups..."
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
3_from_4:
|
|
||||||
name: "Group 3 actions \U0001F350 Flip the cube to side 3 from side 4"
|
|
||||||
description: "**!!Warning!!** The flip 90 automations \U0001F34E for side 3
|
|
||||||
and the ANY \U0001F34A automations will also trigger.\nI suggest using only
|
|
||||||
one of the three groups of triggers, not multiple groups..."
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
3_from_5:
|
|
||||||
name: "Group 3 actions \U0001F350 Flip the cube to side 3 from side 5"
|
|
||||||
description: "**!!Warning!!** The flip 90 automations \U0001F34E for side 3
|
|
||||||
and the ANY \U0001F34A automations will also trigger.\nI suggest using only
|
|
||||||
one of the three groups of triggers, not multiple groups..."
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
4_from_0:
|
|
||||||
name: "Group 3 actions \U0001F350 Flip the cube to side 4 from side 0"
|
|
||||||
description: "**!!Warning!!** The flip 90 automations \U0001F34E for side 4
|
|
||||||
and the ANY \U0001F34A automations will also trigger.\nI suggest using only
|
|
||||||
one of the three groups of triggers, not multiple groups..."
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
4_from_1:
|
|
||||||
name: "Group 3 actions \U0001F350 Flip the cube to side 4 from side 1"
|
|
||||||
description: "**!!Warning!!** The flip 180 automations \U0001F34E for side 4
|
|
||||||
and the ANY \U0001F34A automations will also trigger.\nI suggest using only
|
|
||||||
one of the three groups of triggers, not multiple groups..."
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
4_from_2:
|
|
||||||
name: "Group 3 actions \U0001F350 Flip the cube to side 4 from side 2"
|
|
||||||
description: "**!!Warning!!** The flip 90 automations \U0001F34E for side 4
|
|
||||||
and the ANY \U0001F34A automations will also trigger.\nI suggest using only
|
|
||||||
one of the three groups of triggers, not multiple groups..."
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
4_from_3:
|
|
||||||
name: "Group 3 actions \U0001F350 Flip the cube to side 4 from side 3"
|
|
||||||
description: "**!!Warning!!** The flip 90 automations \U0001F34E for side 4
|
|
||||||
and the ANY \U0001F34A automations will also trigger.\nI suggest using only
|
|
||||||
one of the three groups of triggers, not multiple groups..."
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
4_from_5:
|
|
||||||
name: "Group 3 actions \U0001F350 Flip the cube to side 4 from side 5"
|
|
||||||
description: "**!!Warning!!** The flip 90 automations \U0001F34E for side 4
|
|
||||||
and the ANY \U0001F34A automations will also trigger.\nI suggest using only
|
|
||||||
one of the three groups of triggers, not multiple groups..."
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
5_from_0:
|
|
||||||
name: "Group 3 actions \U0001F350 Flip the cube to side 5 from side 0"
|
|
||||||
description: "**!!Warning!!** The flip 90 automations \U0001F34E for side 5
|
|
||||||
and the ANY \U0001F34A automations will also trigger.\nI suggest using only
|
|
||||||
one of the three groups of triggers, not multiple groups..."
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
5_from_1:
|
|
||||||
name: "Group 3 actions \U0001F350 Flip the cube to side 5 from side 1"
|
|
||||||
description: "**!!Warning!!** The flip 90 automations \U0001F34E for side 5
|
|
||||||
and the ANY \U0001F34A automations will also trigger. \U0001F34E\U0001F350\nI
|
|
||||||
suggest using only one of the three groups of triggers, not multiple groups..."
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
5_from_2:
|
|
||||||
name: "Group 3 actions \U0001F350 Flip the cube to side 5 from side 2"
|
|
||||||
description: "**!!Warning!!** The flip 180 automations \U0001F34E for side 5
|
|
||||||
and the ANY \U0001F34A automations will also trigger.\nI suggest using only
|
|
||||||
one of the three groups of triggers, not multiple groups..."
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
5_from_3:
|
|
||||||
name: "Group 3 actions \U0001F350 Flip the cube to side 5 from side 3"
|
|
||||||
description: "**!!Warning!!** The flip 90 automations \U0001F34E for side 5
|
|
||||||
and the ANY \U0001F34A automations will also trigger.\nI suggest using only
|
|
||||||
one of the three groups of triggers, not multiple groups..."
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
5_from_4:
|
|
||||||
name: "Group 3 actions \U0001F350 Flip the cube to side 5 from side 4"
|
|
||||||
description: "**!!Warning!!** The flip 90 automations \U0001F34E for side 5
|
|
||||||
and the ANY \U0001F34A automations will also trigger.\nI suggest using only
|
|
||||||
one of the three groups of triggers, not multiple groups..."
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
mode: single
|
|
||||||
max_exceeded: silent
|
|
||||||
trigger:
|
|
||||||
- platform: state
|
|
||||||
entity_id: !input remote
|
|
||||||
condition:
|
|
||||||
condition: template
|
|
||||||
value_template: '{{ trigger.to_state.attributes.action in (''rotate_right'', ''rotate_left'',
|
|
||||||
''flip90'', ''flip180'', ''slide'', ''tap'', ''shake'', ''fall'') }}'
|
|
||||||
action:
|
|
||||||
- variables:
|
|
||||||
action: '{{ trigger.to_state.attributes.action }}'
|
|
||||||
side: '{{ trigger.to_state.attributes.side }}'
|
|
||||||
last_side: '{{ trigger.from_state.attributes.side }}'
|
|
||||||
entity_id: !input remote
|
|
||||||
friendly_name: '{{ trigger.to_state.attributes.friendly_name }}'
|
|
||||||
- alias: Fire Last Action event
|
|
||||||
event: cube_last_action
|
|
||||||
event_data:
|
|
||||||
action: '{{ action }}'
|
|
||||||
side: '{{ side }}'
|
|
||||||
last_side: '{{ last_side }}'
|
|
||||||
entity_id: '{{ entity_id }}'
|
|
||||||
friendly_name: '{{ friendly_name }}'
|
|
||||||
- alias: "Group 2 \U0001F34A and No Group \U0001F369 These are action events for ANY
|
|
||||||
Side"
|
|
||||||
choose:
|
|
||||||
- conditions: '{{ action == "slide" }}'
|
|
||||||
sequence: !input slide_any
|
|
||||||
- conditions: '{{ action == "tap" }}'
|
|
||||||
sequence: !input doubletap_any
|
|
||||||
- conditions: '{{ action == "flip90" }}'
|
|
||||||
sequence: !input flipped90_any
|
|
||||||
- conditions: '{{ action == "flip180" }}'
|
|
||||||
sequence: !input flipped180_any
|
|
||||||
- conditions: '{{ action == "rotate_right" }}'
|
|
||||||
sequence: !input rotate_cw_any
|
|
||||||
- conditions: '{{ action == "rotate_left" }}'
|
|
||||||
sequence: !input rotate_ccw_any
|
|
||||||
- conditions: '{{ action == "shake" }}'
|
|
||||||
sequence: !input shake
|
|
||||||
- conditions: '{{ action == "fall" }}'
|
|
||||||
sequence: !input fall
|
|
||||||
- alias: "Group 1 \U0001F34E These are action events based on the action broken down
|
|
||||||
by side"
|
|
||||||
choose:
|
|
||||||
- conditions: '{{ action == "slide" }}'
|
|
||||||
sequence:
|
|
||||||
- alias: These are slide events
|
|
||||||
choose:
|
|
||||||
- conditions: '{{ side == 0 }}'
|
|
||||||
sequence: !input slide_face_0
|
|
||||||
- conditions: '{{ side == 1 }}'
|
|
||||||
sequence: !input slide_face_1
|
|
||||||
- conditions: '{{ side == 2 }}'
|
|
||||||
sequence: !input slide_face_2
|
|
||||||
- conditions: '{{ side == 3 }}'
|
|
||||||
sequence: !input slide_face_3
|
|
||||||
- conditions: '{{ side == 4 }}'
|
|
||||||
sequence: !input slide_face_4
|
|
||||||
- conditions: '{{ side == 5 }}'
|
|
||||||
sequence: !input slide_face_5
|
|
||||||
- conditions: '{{ action == "tap" }}'
|
|
||||||
sequence:
|
|
||||||
- alias: These are doubletap events
|
|
||||||
choose:
|
|
||||||
- conditions: '{{ side == 0 }}'
|
|
||||||
sequence: !input doubletap_face_0
|
|
||||||
- conditions: '{{ side == 1 }}'
|
|
||||||
sequence: !input doubletap_face_1
|
|
||||||
- conditions: '{{ side == 2 }}'
|
|
||||||
sequence: !input doubletap_face_2
|
|
||||||
- conditions: '{{ side == 3 }}'
|
|
||||||
sequence: !input doubletap_face_3
|
|
||||||
- conditions: '{{ side == 4 }}'
|
|
||||||
sequence: !input doubletap_face_4
|
|
||||||
- conditions: '{{ side == 5 }}'
|
|
||||||
sequence: !input doubletap_face_5
|
|
||||||
- conditions: '{{ action == "flip90" }}'
|
|
||||||
sequence:
|
|
||||||
- alias: These are flipped90 events
|
|
||||||
choose:
|
|
||||||
- conditions: '{{ side == 0 }}'
|
|
||||||
sequence: !input flipped90_face_0
|
|
||||||
- conditions: '{{ side == 1 }}'
|
|
||||||
sequence: !input flipped90_face_1
|
|
||||||
- conditions: '{{ side == 2 }}'
|
|
||||||
sequence: !input flipped90_face_2
|
|
||||||
- conditions: '{{ side == 3 }}'
|
|
||||||
sequence: !input flipped90_face_3
|
|
||||||
- conditions: '{{ side == 4 }}'
|
|
||||||
sequence: !input flipped90_face_4
|
|
||||||
- conditions: '{{ side == 5 }}'
|
|
||||||
sequence: !input flipped90_face_5
|
|
||||||
- conditions: '{{ action == "flip180" }}'
|
|
||||||
sequence:
|
|
||||||
- alias: These are flipped180 events
|
|
||||||
choose:
|
|
||||||
- conditions: '{{ side == 0 }}'
|
|
||||||
sequence: !input flipped180_face_0
|
|
||||||
- conditions: '{{ side == 1 }}'
|
|
||||||
sequence: !input flipped180_face_1
|
|
||||||
- conditions: '{{ side == 2 }}'
|
|
||||||
sequence: !input flipped180_face_2
|
|
||||||
- conditions: '{{ side == 3 }}'
|
|
||||||
sequence: !input flipped180_face_3
|
|
||||||
- conditions: '{{ side == 4 }}'
|
|
||||||
sequence: !input flipped180_face_4
|
|
||||||
- conditions: '{{ side == 5 }}'
|
|
||||||
sequence: !input flipped180_face_5
|
|
||||||
- conditions: '{{ action == "rotate_right" }}'
|
|
||||||
sequence:
|
|
||||||
- alias: These are rotate CW events
|
|
||||||
choose:
|
|
||||||
- conditions: '{{ side == 0 }}'
|
|
||||||
sequence: !input rotate_cw_face_0
|
|
||||||
- conditions: '{{ side == 1 }}'
|
|
||||||
sequence: !input rotate_cw_face_1
|
|
||||||
- conditions: '{{ side == 2 }}'
|
|
||||||
sequence: !input rotate_cw_face_2
|
|
||||||
- conditions: '{{ side == 3 }}'
|
|
||||||
sequence: !input rotate_cw_face_3
|
|
||||||
- conditions: '{{ side == 4 }}'
|
|
||||||
sequence: !input rotate_cw_face_4
|
|
||||||
- conditions: '{{ side == 5 }}'
|
|
||||||
sequence: !input rotate_cw_face_5
|
|
||||||
- conditions: '{{ action == "rotate_left" }}'
|
|
||||||
sequence:
|
|
||||||
- alias: These are rotate CCW events
|
|
||||||
choose:
|
|
||||||
- conditions: '{{ side == 0 }}'
|
|
||||||
sequence: !input rotate_ccw_face_0
|
|
||||||
- conditions: '{{ side == 1 }}'
|
|
||||||
sequence: !input rotate_ccw_face_1
|
|
||||||
- conditions: '{{ side == 2 }}'
|
|
||||||
sequence: !input rotate_ccw_face_2
|
|
||||||
- conditions: '{{ side == 3 }}'
|
|
||||||
sequence: !input rotate_ccw_face_3
|
|
||||||
- conditions: '{{ side == 4 }}'
|
|
||||||
sequence: !input rotate_ccw_face_4
|
|
||||||
- conditions: '{{ side == 5 }}'
|
|
||||||
sequence: !input rotate_ccw_face_5
|
|
||||||
- alias: "Group 3 \U0001F350 Side to side jump events"
|
|
||||||
choose:
|
|
||||||
- conditions: '{{ side == 0 }}'
|
|
||||||
sequence:
|
|
||||||
- alias: To side 0 from any events
|
|
||||||
choose:
|
|
||||||
- conditions: '{{ last_side == 1 }}'
|
|
||||||
sequence: !input 0_from_1
|
|
||||||
- conditions: '{{ last_side == 2 }}'
|
|
||||||
sequence: !input 0_from_2
|
|
||||||
- conditions: '{{ last_side == 3 }}'
|
|
||||||
sequence: !input 0_from_3
|
|
||||||
- conditions: '{{ last_side == 4 }}'
|
|
||||||
sequence: !input 0_from_4
|
|
||||||
- conditions: '{{ last_side == 5 }}'
|
|
||||||
sequence: !input 0_from_5
|
|
||||||
- conditions: '{{ side == 1 }}'
|
|
||||||
sequence:
|
|
||||||
- alias: To side 1 from any events
|
|
||||||
choose:
|
|
||||||
- conditions: '{{ last_side == 0 }}'
|
|
||||||
sequence: !input 1_from_0
|
|
||||||
- conditions: '{{ last_side == 2 }}'
|
|
||||||
sequence: !input 1_from_2
|
|
||||||
- conditions: '{{ last_side == 3 }}'
|
|
||||||
sequence: !input 1_from_3
|
|
||||||
- conditions: '{{ last_side == 4 }}'
|
|
||||||
sequence: !input 1_from_4
|
|
||||||
- conditions: '{{ last_side == 5 }}'
|
|
||||||
sequence: !input 1_from_5
|
|
||||||
- conditions: '{{ side == 2 }}'
|
|
||||||
sequence:
|
|
||||||
- alias: To side 2 from any events
|
|
||||||
choose:
|
|
||||||
- conditions: '{{ last_side == 0 }}'
|
|
||||||
sequence: !input 2_from_0
|
|
||||||
- conditions: '{{ last_side == 1 }}'
|
|
||||||
sequence: !input 2_from_1
|
|
||||||
- conditions: '{{ last_side == 3 }}'
|
|
||||||
sequence: !input 2_from_3
|
|
||||||
- conditions: '{{ last_side == 4 }}'
|
|
||||||
sequence: !input 2_from_4
|
|
||||||
- conditions: '{{ last_side == 5 }}'
|
|
||||||
sequence: !input 2_from_5
|
|
||||||
- conditions: '{{ side == 3 }}'
|
|
||||||
sequence:
|
|
||||||
- alias: To side 3 from any events
|
|
||||||
choose:
|
|
||||||
- conditions: '{{ last_side == 0 }}'
|
|
||||||
sequence: !input 3_from_0
|
|
||||||
- conditions: '{{ last_side == 1 }}'
|
|
||||||
sequence: !input 3_from_1
|
|
||||||
- conditions: '{{ last_side == 2 }}'
|
|
||||||
sequence: !input 3_from_2
|
|
||||||
- conditions: '{{ last_side == 4 }}'
|
|
||||||
sequence: !input 3_from_4
|
|
||||||
- conditions: '{{ last_side == 5 }}'
|
|
||||||
sequence: !input 3_from_5
|
|
||||||
- conditions: '{{ side == 4 }}'
|
|
||||||
sequence:
|
|
||||||
- alias: To side 4 from any events
|
|
||||||
choose:
|
|
||||||
- conditions: '{{ last_side == 0 }}'
|
|
||||||
sequence: !input 4_from_0
|
|
||||||
- conditions: '{{ last_side == 1 }}'
|
|
||||||
sequence: !input 4_from_1
|
|
||||||
- conditions: '{{ last_side == 2 }}'
|
|
||||||
sequence: !input 4_from_2
|
|
||||||
- conditions: '{{ last_side == 3 }}'
|
|
||||||
sequence: !input 4_from_3
|
|
||||||
- conditions: '{{ last_side == 5 }}'
|
|
||||||
sequence: !input 4_from_5
|
|
||||||
- conditions: '{{ side == 5 }}'
|
|
||||||
sequence:
|
|
||||||
- alias: To side 5 from any events
|
|
||||||
choose:
|
|
||||||
- conditions: '{{ last_side == 0 }}'
|
|
||||||
sequence: !input 5_from_0
|
|
||||||
- conditions: '{{ last_side == 1 }}'
|
|
||||||
sequence: !input 5_from_1
|
|
||||||
- conditions: '{{ last_side == 2 }}'
|
|
||||||
sequence: !input 5_from_2
|
|
||||||
- conditions: '{{ last_side == 3 }}'
|
|
||||||
sequence: !input 5_from_3
|
|
||||||
- conditions: '{{ last_side == 4 }}'
|
|
||||||
sequence: !input 5_from_4
|
|
||||||
- alias: Delay ⏱ for debounce so toggle functions work. Also blueprint is in single
|
|
||||||
mode.
|
|
||||||
delay: 00:00:01
|
|
||||||
+1040
File diff suppressed because it is too large
Load Diff
@@ -1,755 +0,0 @@
|
|||||||
blueprint:
|
|
||||||
name: Aqara Magic Cube
|
|
||||||
description: Control anything using Aqara Magic Cube.
|
|
||||||
domain: automation
|
|
||||||
input:
|
|
||||||
remote:
|
|
||||||
name: Magic Cube
|
|
||||||
description: Select the Aqara Magic Cube device
|
|
||||||
selector:
|
|
||||||
device:
|
|
||||||
integration: zha
|
|
||||||
manufacturer: LUMI
|
|
||||||
multiple: false
|
|
||||||
active_face:
|
|
||||||
name: Active Face
|
|
||||||
description: Select the number input for tracking active face
|
|
||||||
selector:
|
|
||||||
entity:
|
|
||||||
domain: input_number
|
|
||||||
multiple: false
|
|
||||||
flip_90:
|
|
||||||
name: Flip 90 degrees
|
|
||||||
description: 'Actions to run when cube flips 90 degrees.
|
|
||||||
|
|
||||||
This cancels all specific 90 degrees functions.
|
|
||||||
|
|
||||||
e.g From side 1 to side 2 will be the same as from side 6 to side 2'
|
|
||||||
default: false
|
|
||||||
selector:
|
|
||||||
boolean: {}
|
|
||||||
cube_flip_90:
|
|
||||||
name: Flip cube 90 degrees
|
|
||||||
description: Action to run when cube flips 90 degrees. This only works if 'Flip
|
|
||||||
90 degrees' is toggled
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
flip_180:
|
|
||||||
name: Flip 180 degrees
|
|
||||||
description: 'Actions to run when cube flips 180 degrees.
|
|
||||||
|
|
||||||
This cancels all specific 180 degrees functions
|
|
||||||
|
|
||||||
e.g From side 1 to side 4 will be the same as from side 5 to side 2'
|
|
||||||
default: false
|
|
||||||
selector:
|
|
||||||
boolean: {}
|
|
||||||
cube_flip_180:
|
|
||||||
name: Flip cube 180 degrees
|
|
||||||
description: Action to run when cube flips 180 degrees. This only works if 'Flip
|
|
||||||
180 degrees' is toggled
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
flip_any:
|
|
||||||
name: Flip cube to any side
|
|
||||||
description: 'Actions to run when cube flips to any side.
|
|
||||||
|
|
||||||
This cares about the end side, but cancels all specific flip functions.
|
|
||||||
|
|
||||||
e.g From side 1 to side 2 will be the same as from side 6 to side 2
|
|
||||||
|
|
||||||
but different than side 1 to side 5'
|
|
||||||
default: false
|
|
||||||
selector:
|
|
||||||
boolean: {}
|
|
||||||
cube_flip_1:
|
|
||||||
name: Flip cube to side 1
|
|
||||||
description: Action to run when cube flips to side 1. This only works if 'Flip
|
|
||||||
any' is toggled
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
cube_flip_2:
|
|
||||||
name: Flip cube to side 2
|
|
||||||
description: Action to run when cube flips to side 2. This only works if 'Flip
|
|
||||||
any' is toggled
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
cube_flip_3:
|
|
||||||
name: Flip cube to side 3
|
|
||||||
description: Action to run when cube flips to side 3. This only works if 'Flip
|
|
||||||
any' is toggled
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
cube_flip_4:
|
|
||||||
name: Flip cube to side 4
|
|
||||||
description: Action to run when cube flips to side 4. This only works if 'Flip
|
|
||||||
any' is toggled
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
cube_flip_5:
|
|
||||||
name: Flip cube to side 5
|
|
||||||
description: Action to run when cube flips to side 5. This only works if 'Flip
|
|
||||||
any' is toggled
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
cube_flip_6:
|
|
||||||
name: Flip cube to side 6
|
|
||||||
description: Action to run when cube flips to side 6. This only works if 'Flip
|
|
||||||
any' is toggled
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
slide_any_side:
|
|
||||||
name: Slide any side
|
|
||||||
description: 'Actions to run when cube slides on any side.
|
|
||||||
|
|
||||||
This cancels all specific ''slide'' functions
|
|
||||||
|
|
||||||
e.g Slide on side 1 will be the same as slide on side 2'
|
|
||||||
default: false
|
|
||||||
selector:
|
|
||||||
boolean: {}
|
|
||||||
cube_slide_any:
|
|
||||||
name: Slide cube on any side
|
|
||||||
description: Action to run when cube slides on any side. This only works if
|
|
||||||
'Slide any side' is toggled
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
knock_any_side:
|
|
||||||
name: Knock on any side
|
|
||||||
description: 'Actions to run when knocking cube regardless of the side.
|
|
||||||
|
|
||||||
This cancels all specific ''knock'' functions
|
|
||||||
|
|
||||||
e.g Knock on side 1 will be the same as knocking side 2'
|
|
||||||
default: false
|
|
||||||
selector:
|
|
||||||
boolean: {}
|
|
||||||
cube_knock_any:
|
|
||||||
name: Knock cube on any side
|
|
||||||
description: Action to run when knocking cube on any side. This only works if
|
|
||||||
'Knock on any side' is toggled
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
one_to_two:
|
|
||||||
name: From side 1 to side 2
|
|
||||||
description: Action to run when cube goes from side 1 to side 2
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
one_to_three:
|
|
||||||
name: From side 1 to side 3
|
|
||||||
description: Action to run when cube goes from side 1 to side 3
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
one_to_four:
|
|
||||||
name: From side 1 to side 4
|
|
||||||
description: Action to run when cube goes from side 1 to side 4
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
one_to_five:
|
|
||||||
name: From side 1 to side 5
|
|
||||||
description: Action to run when cube goes from side 1 to side 5
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
one_to_six:
|
|
||||||
name: From side 1 to side 6
|
|
||||||
description: Action to run when cube goes from side 1 to side 6
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
two_to_one:
|
|
||||||
name: From side 2 to side 1
|
|
||||||
description: Action to run when cube goes from side 2 to side 1
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
two_to_three:
|
|
||||||
name: From side 2 to side 3
|
|
||||||
description: Action to run when cube goes from side 2 to side 3
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
two_to_four:
|
|
||||||
name: From side 2 to side 4
|
|
||||||
description: Action to run when cube goes from side 2 to side 4
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
two_to_five:
|
|
||||||
name: From side 2 to side 5
|
|
||||||
description: Action to run when cube goes from side 2 to side 5
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
two_to_six:
|
|
||||||
name: From side 2 to side 6
|
|
||||||
description: Action to run when cube goes from side 2 to side 6
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
three_to_one:
|
|
||||||
name: From side 3 to side 1
|
|
||||||
description: Action to run when cube goes from side 3 to side 1
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
three_to_two:
|
|
||||||
name: From side 3 to side 2
|
|
||||||
description: Action to run when cube goes from side 3 to side 2
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
three_to_four:
|
|
||||||
name: From side 3 to side 4
|
|
||||||
description: Action to run when cube goes from side 3 to side 4
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
three_to_five:
|
|
||||||
name: From side 3 to side 5
|
|
||||||
description: Action to run when cube goes from side 3 to side 5
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
three_to_six:
|
|
||||||
name: From side 3 to side 6
|
|
||||||
description: Action to run when cube goes from side 3 to side 6
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
four_to_one:
|
|
||||||
name: From side 4 to side 1
|
|
||||||
description: Action to run when cube goes from side 4 to side 1
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
four_to_two:
|
|
||||||
name: From side 4 to side 2
|
|
||||||
description: Action to run when cube goes from side 4 to side 2
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
four_to_three:
|
|
||||||
name: From side 4 to side 3
|
|
||||||
description: Action to run when cube goes from side 4 to side 3
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
four_to_five:
|
|
||||||
name: From side 4 to side 5
|
|
||||||
description: Action to run when cube goes from side 4 to side 5
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
four_to_six:
|
|
||||||
name: From side 4 to side 6
|
|
||||||
description: Action to run when cube goes from side 4 to side 6
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
five_to_one:
|
|
||||||
name: From side 5 to side 1
|
|
||||||
description: Action to run when cube goes from side 5 to side 1
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
five_to_two:
|
|
||||||
name: From side 5 to side 2
|
|
||||||
description: Action to run when cube goes from side 5 to side 2
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
five_to_three:
|
|
||||||
name: From side 5 to side 3
|
|
||||||
description: Action to run when cube goes from side 5 to side 3
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
five_to_four:
|
|
||||||
name: From side 5 to side 4
|
|
||||||
description: Action to run when cube goes from side 5 to side 4
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
five_to_six:
|
|
||||||
name: From side 5 to side 6
|
|
||||||
description: Action to run when cube goes from side 5 to side 6
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
six_to_one:
|
|
||||||
name: From side 6 to side 1
|
|
||||||
description: Action to run when cube goes from side 6 to side 1
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
six_to_two:
|
|
||||||
name: From side 6 to side 2
|
|
||||||
description: Action to run when cube goes from side 6 to side 2
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
six_to_three:
|
|
||||||
name: From side 6 to side 3
|
|
||||||
description: Action to run when cube goes from side 6 to side 3
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
six_to_four:
|
|
||||||
name: From side 6 to side 4
|
|
||||||
description: Action to run when cube goes from side 6 to side 4
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
six_to_five:
|
|
||||||
name: From side 6 to side 5
|
|
||||||
description: Action to run when cube goes from side 6 to side 5
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
one_to_one:
|
|
||||||
name: Knock - Side 1
|
|
||||||
description: Action to run when knocking on side 1
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
two_to_two:
|
|
||||||
name: Knock - Side 2
|
|
||||||
description: Action to run when knocking on side 2
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
three_to_three:
|
|
||||||
name: Knock - Side 3
|
|
||||||
description: Action to run when knocking on side 3
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
four_to_four:
|
|
||||||
name: Knock - Side 4
|
|
||||||
description: Action to run when knocking on side 4
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
five_to_five:
|
|
||||||
name: Knock - Side 5
|
|
||||||
description: Action to run when knocking on side 5
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
six_to_six:
|
|
||||||
name: Knock - Side 6
|
|
||||||
description: Action to run when knocking on side 6
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
slide_on_one:
|
|
||||||
name: Slide - Side 1 up
|
|
||||||
description: Action to run when slides with Side 1 up
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
slide_on_two:
|
|
||||||
name: Slide - Side 2 up
|
|
||||||
description: Action to run when slides with Side 2 up
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
slide_on_three:
|
|
||||||
name: Slide - Side 3 up
|
|
||||||
description: Action to run when slides with Side 3 up
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
slide_on_four:
|
|
||||||
name: Slide - Side 4 up
|
|
||||||
description: Action to run when slides with Side 4 up
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
slide_on_five:
|
|
||||||
name: Slide - Side 5 up
|
|
||||||
description: Action to run when slides with Side 5 up
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
slide_on_six:
|
|
||||||
name: Slide - Side 6 up
|
|
||||||
description: Action to run when slides with Side 6 up
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
cube_wake:
|
|
||||||
name: Wake up the cube
|
|
||||||
description: Action to run when cube wakes up
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
cube_drop:
|
|
||||||
name: Cube drops
|
|
||||||
description: Action to run when cube drops
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
cube_shake:
|
|
||||||
name: Shake cube
|
|
||||||
description: Action to run when you shake the cube
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
rotate_any_side:
|
|
||||||
name: Rotate any side
|
|
||||||
description: 'Actions to run when rotating cube regardless of the side.
|
|
||||||
|
|
||||||
This cancels all side-specific ''rotate'' functions
|
|
||||||
|
|
||||||
e.g Rotate on side 1 will be the same as rotating side 2'
|
|
||||||
default: false
|
|
||||||
selector:
|
|
||||||
boolean: {}
|
|
||||||
rotate_right:
|
|
||||||
name: Rotate right
|
|
||||||
description: Action to run when cube rotates right on any side. This only works
|
|
||||||
if 'Rotate any side' is toggled
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
rotate_left:
|
|
||||||
name: Rotate left
|
|
||||||
description: Action to run when cube rotates left on any side. This only works
|
|
||||||
if 'Rotate any side' is toggled
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
rotate_left_side_1:
|
|
||||||
name: Rotate cube left with side 1 up
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
rotate_left_side_2:
|
|
||||||
name: Rotate cube left with side 2 up
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
rotate_left_side_3:
|
|
||||||
name: Rotate cube left with side 3 up
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
rotate_left_side_4:
|
|
||||||
name: Rotate cube left with side 4 up
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
rotate_left_side_5:
|
|
||||||
name: Rotate cube left with side 5 up
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
rotate_left_side_6:
|
|
||||||
name: Rotate cube left with side 6 up
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
rotate_right_side_1:
|
|
||||||
name: Rotate cube right with side 1 up
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
rotate_right_side_2:
|
|
||||||
name: Rotate cube right with side 2 up
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
rotate_right_side_3:
|
|
||||||
name: Rotate cube right with side 3 up
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
rotate_right_side_4:
|
|
||||||
name: Rotate cube right with side 4 up
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
rotate_right_side_5:
|
|
||||||
name: Rotate cube right with side 5 up
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
rotate_right_side_6:
|
|
||||||
name: Rotate cube right with side 6 up
|
|
||||||
default: []
|
|
||||||
selector:
|
|
||||||
action: {}
|
|
||||||
source_url: https://gist.github.com/rvaidya/3fe8a5f3b1d113ffa8625cf5ff2c88a3
|
|
||||||
mode: restart
|
|
||||||
max_exceeded: silent
|
|
||||||
trigger:
|
|
||||||
- platform: event
|
|
||||||
event_type: zha_event
|
|
||||||
event_data:
|
|
||||||
device_id: !input remote
|
|
||||||
action:
|
|
||||||
- variables:
|
|
||||||
command: '{{ trigger.event.data.command }}'
|
|
||||||
value: '{{ trigger.event.data.args.value | default(0) }}'
|
|
||||||
flip_degrees: '{{ trigger.event.data.args.flip_degrees | default(0) }}'
|
|
||||||
flip_any: !input flip_any
|
|
||||||
flip_90: !input flip_90
|
|
||||||
flip_180: !input flip_180
|
|
||||||
slide_any_side: !input slide_any_side
|
|
||||||
knock_any_side: !input knock_any_side
|
|
||||||
rotate_any_side: !input rotate_any_side
|
|
||||||
flip90: 64
|
|
||||||
flip180: 128
|
|
||||||
slide: 256
|
|
||||||
knock: 512
|
|
||||||
shake: 0
|
|
||||||
drop: 3
|
|
||||||
active_face_entity: !input active_face
|
|
||||||
active_face: '{{ states(active_face_entity) | int }}'
|
|
||||||
activated_face: "\n{% if command == \"slide\" or command == \"knock\" %}\n\n {%
|
|
||||||
if trigger.event.data.args.activated_face == 1 %} 1\n\n {% elif trigger.event.data.args.activated_face
|
|
||||||
== 2 %} 5\n\n {% elif trigger.event.data.args.activated_face == 3 %} 6\n\n
|
|
||||||
\ {% elif trigger.event.data.args.activated_face == 4 %} 4\n\n {% elif trigger.event.data.args.activated_face
|
|
||||||
== 5 %} 2\n\n {% elif trigger.event.data.args.activated_face == 6 %} 3\n\n
|
|
||||||
\ {% endif %}\n\n{% elif command == 'flip' %}\n\n {{ trigger.event.data.args.activated_face
|
|
||||||
| int }}\n\n{% endif %}\n"
|
|
||||||
from_face: "\n{% if command == \"flip\" and flip_degrees == 90 %}\n\n {{ ((value
|
|
||||||
- flip90 - (trigger.event.data.args.activated_face - 1)) / 8) + 1 | int }}\n\n{%
|
|
||||||
endif %}\n"
|
|
||||||
relative_degrees: "\n{% if command == \"rotate_right\" or command == \"rotate_left\"
|
|
||||||
%}\n\n {{ trigger.event.data.args.relative_degrees | float }}\n\n{% endif %}\n"
|
|
||||||
- choose:
|
|
||||||
- conditions:
|
|
||||||
- '{{ command == ''checkin'' }}'
|
|
||||||
sequence: !input cube_wake
|
|
||||||
- conditions:
|
|
||||||
- '{{ command == ''flip'' }}'
|
|
||||||
sequence:
|
|
||||||
- service: input_number.set_value
|
|
||||||
target:
|
|
||||||
entity_id: '{{ active_face_entity }}'
|
|
||||||
data:
|
|
||||||
value: '{{ activated_face | int }}'
|
|
||||||
- choose:
|
|
||||||
- conditions: '{{ flip_any }}'
|
|
||||||
sequence:
|
|
||||||
- choose:
|
|
||||||
- conditions: '{{ activated_face == 1 }}'
|
|
||||||
sequence: !input cube_flip_1
|
|
||||||
- conditions: '{{ activated_face == 2 }}'
|
|
||||||
sequence: !input cube_flip_2
|
|
||||||
- conditions: '{{ activated_face == 3 }}'
|
|
||||||
sequence: !input cube_flip_3
|
|
||||||
- conditions: '{{ activated_face == 4 }}'
|
|
||||||
sequence: !input cube_flip_4
|
|
||||||
- conditions: '{{ activated_face == 5 }}'
|
|
||||||
sequence: !input cube_flip_5
|
|
||||||
- conditions: '{{ activated_face == 6 }}'
|
|
||||||
sequence: !input cube_flip_6
|
|
||||||
- conditions:
|
|
||||||
- '{{ flip_degrees == 90 and flip_90 }}'
|
|
||||||
sequence: !input cube_flip_90
|
|
||||||
- conditions:
|
|
||||||
- '{{ flip_degrees == 180 and flip_180 }}'
|
|
||||||
sequence: !input cube_flip_180
|
|
||||||
- conditions:
|
|
||||||
- '{{ flip_degrees == 90 and activated_face == 1 }}'
|
|
||||||
sequence:
|
|
||||||
- choose:
|
|
||||||
- conditions: '{{ from_face == 2 }}'
|
|
||||||
sequence: !input two_to_one
|
|
||||||
- conditions: '{{ from_face == 3 }}'
|
|
||||||
sequence: !input three_to_one
|
|
||||||
- conditions: '{{ from_face == 5 }}'
|
|
||||||
sequence: !input five_to_one
|
|
||||||
- conditions: '{{ from_face == 6 }}'
|
|
||||||
sequence: !input six_to_one
|
|
||||||
- conditions:
|
|
||||||
- '{{ flip_degrees == 90 and activated_face == 2 }}'
|
|
||||||
sequence:
|
|
||||||
- choose:
|
|
||||||
- conditions: '{{ from_face == 1 }}'
|
|
||||||
sequence: !input one_to_two
|
|
||||||
- conditions: '{{ from_face == 3 }}'
|
|
||||||
sequence: !input three_to_two
|
|
||||||
- conditions: '{{ from_face == 4 }}'
|
|
||||||
sequence: !input four_to_two
|
|
||||||
- conditions: '{{ from_face == 6 }}'
|
|
||||||
sequence: !input six_to_two
|
|
||||||
- conditions:
|
|
||||||
- '{{ flip_degrees == 90 and activated_face == 3 }}'
|
|
||||||
sequence:
|
|
||||||
- choose:
|
|
||||||
- conditions: '{{ from_face == 1 }}'
|
|
||||||
sequence: !input one_to_three
|
|
||||||
- conditions: '{{ from_face == 2 }}'
|
|
||||||
sequence: !input two_to_three
|
|
||||||
- conditions: '{{ from_face == 4 }}'
|
|
||||||
sequence: !input four_to_three
|
|
||||||
- conditions: '{{ from_face == 5 }}'
|
|
||||||
sequence: !input five_to_three
|
|
||||||
- conditions:
|
|
||||||
- '{{ flip_degrees == 90 and activated_face == 4 }}'
|
|
||||||
sequence:
|
|
||||||
- choose:
|
|
||||||
- conditions: '{{ from_face == 2 }}'
|
|
||||||
sequence: !input two_to_four
|
|
||||||
- conditions: '{{ from_face == 3 }}'
|
|
||||||
sequence: !input three_to_four
|
|
||||||
- conditions: '{{ from_face == 5 }}'
|
|
||||||
sequence: !input five_to_four
|
|
||||||
- conditions: '{{ from_face == 6 }}'
|
|
||||||
sequence: !input six_to_four
|
|
||||||
- conditions:
|
|
||||||
- '{{ flip_degrees == 90 and activated_face == 5 }}'
|
|
||||||
sequence:
|
|
||||||
- choose:
|
|
||||||
- conditions: '{{ from_face == 1 }}'
|
|
||||||
sequence: !input one_to_five
|
|
||||||
- conditions: '{{ from_face == 3 }}'
|
|
||||||
sequence: !input three_to_five
|
|
||||||
- conditions: '{{ from_face == 4 }}'
|
|
||||||
sequence: !input four_to_five
|
|
||||||
- conditions: '{{ from_face == 6 }}'
|
|
||||||
sequence: !input six_to_five
|
|
||||||
- conditions:
|
|
||||||
- '{{ flip_degrees == 90 and activated_face == 6 }}'
|
|
||||||
sequence:
|
|
||||||
- choose:
|
|
||||||
- conditions: '{{ from_face == 1 }}'
|
|
||||||
sequence: !input one_to_six
|
|
||||||
- conditions: '{{ from_face == 2 }}'
|
|
||||||
sequence: !input two_to_six
|
|
||||||
- conditions: '{{ from_face == 4 }}'
|
|
||||||
sequence: !input four_to_six
|
|
||||||
- conditions: '{{ from_face == 5 }}'
|
|
||||||
sequence: !input five_to_six
|
|
||||||
- conditions:
|
|
||||||
- '{{ value == flip180 + activated_face - 1 }}'
|
|
||||||
sequence:
|
|
||||||
- choose:
|
|
||||||
- conditions: '{{ activated_face == 1 }}'
|
|
||||||
sequence: !input four_to_one
|
|
||||||
- conditions: '{{ activated_face == 2 }}'
|
|
||||||
sequence: !input five_to_two
|
|
||||||
- conditions: '{{ activated_face == 3 }}'
|
|
||||||
sequence: !input six_to_three
|
|
||||||
- conditions: '{{ activated_face == 4 }}'
|
|
||||||
sequence: !input one_to_four
|
|
||||||
- conditions: '{{ activated_face == 5 }}'
|
|
||||||
sequence: !input two_to_five
|
|
||||||
- conditions: '{{ activated_face == 6 }}'
|
|
||||||
sequence: !input three_to_six
|
|
||||||
- conditions:
|
|
||||||
- '{{ command == ''knock'' }}'
|
|
||||||
sequence:
|
|
||||||
- service: input_number.set_value
|
|
||||||
target:
|
|
||||||
entity_id: '{{ active_face_entity }}'
|
|
||||||
data:
|
|
||||||
value: '{{ activated_face | int }}'
|
|
||||||
- choose:
|
|
||||||
- conditions: '{{ knock_any_side }}'
|
|
||||||
sequence: !input cube_knock_any
|
|
||||||
- conditions: '{{ activated_face == 1 }}'
|
|
||||||
sequence: !input one_to_one
|
|
||||||
- conditions: '{{ activated_face == 2 }}'
|
|
||||||
sequence: !input two_to_two
|
|
||||||
- conditions: '{{ activated_face == 3 }}'
|
|
||||||
sequence: !input three_to_three
|
|
||||||
- conditions: '{{ activated_face == 4 }}'
|
|
||||||
sequence: !input four_to_four
|
|
||||||
- conditions: '{{ activated_face == 5 }}'
|
|
||||||
sequence: !input five_to_five
|
|
||||||
- conditions: '{{ activated_face == 6 }}'
|
|
||||||
sequence: !input six_to_six
|
|
||||||
- conditions:
|
|
||||||
- '{{ command == ''slide'' }}'
|
|
||||||
sequence:
|
|
||||||
- service: input_number.set_value
|
|
||||||
target:
|
|
||||||
entity_id: '{{ active_face_entity }}'
|
|
||||||
data:
|
|
||||||
value: '{{ activated_face | int }}'
|
|
||||||
- choose:
|
|
||||||
- conditions: '{{ slide_any_side }}'
|
|
||||||
sequence: !input cube_slide_any
|
|
||||||
- conditions:
|
|
||||||
- '{{ value == slide + activated_face - 1 }}'
|
|
||||||
sequence:
|
|
||||||
- choose:
|
|
||||||
- conditions: '{{ activated_face == 1 }}'
|
|
||||||
sequence: !input slide_on_one
|
|
||||||
- conditions: '{{ activated_face == 2 }}'
|
|
||||||
sequence: !input slide_on_two
|
|
||||||
- conditions: '{{ activated_face == 3 }}'
|
|
||||||
sequence: !input slide_on_three
|
|
||||||
- conditions: '{{ activated_face == 4 }}'
|
|
||||||
sequence: !input slide_on_four
|
|
||||||
- conditions: '{{ activated_face == 5 }}'
|
|
||||||
sequence: !input slide_on_five
|
|
||||||
- conditions: '{{ activated_face == 6 }}'
|
|
||||||
sequence: !input slide_on_six
|
|
||||||
- conditions:
|
|
||||||
- '{{ command == ''rotate_left'' and rotate_any_side }}'
|
|
||||||
sequence: !input rotate_left
|
|
||||||
- conditions:
|
|
||||||
- '{{ command == ''rotate_left'' and active_face == 1 }}'
|
|
||||||
sequence: !input rotate_left_side_1
|
|
||||||
- conditions:
|
|
||||||
- '{{ command == ''rotate_left'' and active_face == 2 }}'
|
|
||||||
sequence: !input rotate_left_side_2
|
|
||||||
- conditions:
|
|
||||||
- '{{ command == ''rotate_left'' and active_face == 3 }}'
|
|
||||||
sequence: !input rotate_left_side_3
|
|
||||||
- conditions:
|
|
||||||
- '{{ command == ''rotate_left'' and active_face == 4 }}'
|
|
||||||
sequence: !input rotate_left_side_4
|
|
||||||
- conditions:
|
|
||||||
- '{{ command == ''rotate_left'' and active_face == 5 }}'
|
|
||||||
sequence: !input rotate_left_side_5
|
|
||||||
- conditions:
|
|
||||||
- '{{ command == ''rotate_left'' and active_face == 6 }}'
|
|
||||||
sequence: !input rotate_left_side_6
|
|
||||||
- conditions:
|
|
||||||
- '{{ command == ''rotate_right'' and rotate_any_side }}'
|
|
||||||
sequence: !input rotate_right
|
|
||||||
- conditions:
|
|
||||||
- '{{ command == ''rotate_right'' and active_face == 1 }}'
|
|
||||||
sequence: !input rotate_right_side_1
|
|
||||||
- conditions:
|
|
||||||
- '{{ command == ''rotate_right'' and active_face == 2 }}'
|
|
||||||
sequence: !input rotate_right_side_2
|
|
||||||
- conditions:
|
|
||||||
- '{{ command == ''rotate_right'' and active_face == 3 }}'
|
|
||||||
sequence: !input rotate_right_side_3
|
|
||||||
- conditions:
|
|
||||||
- '{{ command == ''rotate_right'' and active_face == 4 }}'
|
|
||||||
sequence: !input rotate_right_side_4
|
|
||||||
- conditions:
|
|
||||||
- '{{ command == ''rotate_right'' and active_face == 5 }}'
|
|
||||||
sequence: !input rotate_right_side_5
|
|
||||||
- conditions:
|
|
||||||
- '{{ command == ''rotate_right'' and active_face == 6 }}'
|
|
||||||
sequence: !input rotate_right_side_6
|
|
||||||
- conditions:
|
|
||||||
- '{{ command == ''shake'' or value == shake }}'
|
|
||||||
sequence: !input cube_shake
|
|
||||||
- conditions:
|
|
||||||
- '{{ command == ''drop'' or value == drop }}'
|
|
||||||
sequence: !input cube_drop
|
|
||||||
@@ -24,7 +24,7 @@ observations:
|
|||||||
prob_given_false: 0.0
|
prob_given_false: 0.0
|
||||||
|
|
||||||
- platform: state
|
- platform: state
|
||||||
entity_id: input_boolean.white_bed_occupied
|
entity_id: binary_sensor.white_bed_occupied
|
||||||
to_state: "on"
|
to_state: "on"
|
||||||
prob_given_true: .67
|
prob_given_true: .67
|
||||||
prob_given_false: 0.0
|
prob_given_false: 0.0
|
||||||
|
|||||||
@@ -71,25 +71,25 @@ sensors:
|
|||||||
double_planter_needs_water:
|
double_planter_needs_water:
|
||||||
unique_id: templatebinarysensor.double_planter_needs_water
|
unique_id: templatebinarysensor.double_planter_needs_water
|
||||||
friendly_name: Double Planter Needs Water
|
friendly_name: Double Planter Needs Water
|
||||||
value_template: "{{ states('sensor.fineoffset_wh51_00f935_moisture')|float(default=0) <= states('input_number.double_planter_water_alert')|int(default=0) }}"
|
value_template: "{{ states('sensor.hasta_soil_sensor_moisture')|float(default=0) <= states('input_number.double_planter_water_alert')|int(default=0) }}"
|
||||||
delay_on: "00:05:00"
|
delay_on: "00:05:00"
|
||||||
icon_template: >
|
icon_template: >
|
||||||
{% if states('sensor.fineoffset_wh51_00f935_moisture') == 'unavailable' %}
|
{% if states('sensor.hasta_soil_sensor_moisture') == 'unavailable' %}
|
||||||
mdi:flower-outline
|
mdi:flower-outline
|
||||||
{% else %}
|
{% else %}
|
||||||
mdi:flower
|
mdi:flower
|
||||||
{% endif %}
|
{% endif %}
|
||||||
attribute_templates:
|
attribute_templates:
|
||||||
moisture: "{{states('sensor.fineoffset_wh51_00f935_moisture') | float(default=0)}}"
|
moisture: "{{states('sensor.hasta_soil_sensor_moisture') | float(default=0)}}"
|
||||||
alarm_trigger: "{{states('input_number.double_planter_water_alert') | float(default=0)}}"
|
alarm_trigger: "{{states('input_number.double_planter_water_alert') | float(default=0)}}"
|
||||||
|
|
||||||
kitchen_fridge_too_warm:
|
kitchen_fridge_too_warm:
|
||||||
unique_id: templatebinarysensor.kitchen_fridge_too_warm
|
unique_id: templatebinarysensor.kitchen_fridge_too_warm
|
||||||
friendly_name: Kitchen Fridge Too Warm
|
friendly_name: Kitchen Fridge Too Warm
|
||||||
value_template: "{{ states('sensor.acurite_986_1r_48226_temperature')|int(default=0) > states('input_number.kitchen_fridge_alert')|int(default=0) }}"
|
value_template: "{{ states('sensor.kitchen_fridge_thermostat_temperature')|int(default=0) > states('input_number.kitchen_fridge_alert')|int(default=0) }}"
|
||||||
delay_on: "00:30:00"
|
delay_on: "00:30:00"
|
||||||
icon_template: >
|
icon_template: >
|
||||||
{% if states('sensor.acurite_986_1r_48226_temperature')|int(default=0) > states('input_number.kitchen_fridge_alert')|int(default=0) %}
|
{% if states('sensor.kitchen_fridge_thermostat_temperature')|int(default=0) > states('input_number.kitchen_fridge_alert')|int(default=0) %}
|
||||||
mdi:fridge-variant-alert
|
mdi:fridge-variant-alert
|
||||||
{% else %}
|
{% else %}
|
||||||
mdi:fridge-variant
|
mdi:fridge-variant
|
||||||
@@ -98,10 +98,10 @@ sensors:
|
|||||||
kitchen_freezer_too_warm:
|
kitchen_freezer_too_warm:
|
||||||
unique_id: templatebinarysensor.kitchen_freezer_too_warm
|
unique_id: templatebinarysensor.kitchen_freezer_too_warm
|
||||||
friendly_name: Kitchen Freezer Too Warm
|
friendly_name: Kitchen Freezer Too Warm
|
||||||
value_template: "{{ states('sensor.acurite_986_2f_42383_temperature')|int(default=0) > states('input_number.kitchen_freezer_alert')|int(default=0) }}"
|
value_template: "{{ states('sensor.kitchen_freezer_thermostat_temperature')|int(default=0) > states('input_number.kitchen_freezer_alert')|int(default=0) }}"
|
||||||
delay_on: "00:30:00"
|
delay_on: "00:30:00"
|
||||||
icon_template: >
|
icon_template: >
|
||||||
{% if states('sensor.acurite_986_2f_42383_temperature')|int(default=0) > states('input_number.kitchen_freezer_alert')|int(default=0) %}
|
{% if states('sensor.kitchen_freezer_thermostat_temperature')|int(default=0) > states('input_number.kitchen_freezer_alert')|int(default=0) %}
|
||||||
mdi:fridge-variant-alert
|
mdi:fridge-variant-alert
|
||||||
{% else %}
|
{% else %}
|
||||||
mdi:fridge-variant
|
mdi:fridge-variant
|
||||||
@@ -110,10 +110,10 @@ sensors:
|
|||||||
kitchen_fridge_or_freezer_too_warm:
|
kitchen_fridge_or_freezer_too_warm:
|
||||||
unique_id: templatebinarysensor.kitchen_fridge_or_freezer_too_warm
|
unique_id: templatebinarysensor.kitchen_fridge_or_freezer_too_warm
|
||||||
friendly_name: Kitchen Fridge or Freezer Too Warm
|
friendly_name: Kitchen Fridge or Freezer Too Warm
|
||||||
value_template: "{{ states('sensor.acurite_986_1r_48226_temperature')|int(default=0) > states('input_number.kitchen_fridge_alert')|int(default=0) or states('sensor.acurite_986_2f_42383_temperature')|int(default=0) > states('input_number.kitchen_freezer_alert')|int(default=0) }}"
|
value_template: "{{ states('sensor.kitchen_fridge_thermostat_temperature')|int(default=0) > states('input_number.kitchen_fridge_alert')|int(default=0) or states('sensor.kitchen_freezer_thermostat_temperature')|int(default=0) > states('input_number.kitchen_freezer_alert')|int(default=0) }}"
|
||||||
delay_on: "00:30:00"
|
delay_on: "00:30:00"
|
||||||
icon_template: >
|
icon_template: >
|
||||||
{% if states('sensor.acurite_986_1r_48226_temperature')|int(default=0) > states('input_number.kitchen_fridge_alert')|int(default=0) or states('sensor.acurite_986_2f_42383_temperature')|int(default=0) > states('input_number.kitchen_freezer_alert')|int(default=0) %}
|
{% if states('sensor.kitchen_fridge_thermostat_temperature')|int(default=0) > states('input_number.kitchen_fridge_alert')|int(default=0) or states('sensor.kitchen_freezer_thermostat_temperature')|int(default=0) > states('input_number.kitchen_freezer_alert')|int(default=0) %}
|
||||||
mdi:fridge-variant-alert
|
mdi:fridge-variant-alert
|
||||||
{% else %}
|
{% else %}
|
||||||
mdi:fridge-variant
|
mdi:fridge-variant
|
||||||
@@ -375,7 +375,7 @@ sensors:
|
|||||||
# unique_id: templatebinarysensor.warmer_outside
|
# unique_id: templatebinarysensor.warmer_outside
|
||||||
# friendly_name: Warmer Outside
|
# friendly_name: Warmer Outside
|
||||||
# value_template: >-
|
# value_template: >-
|
||||||
# {% if states('sensor.thermostat_temperature') | float(default=0) - 5 < states('sensor.lacrosse_tx141thbv2_0_temperature') | float(default=0) %}
|
# {% if states('sensor.thermostat_temperature') | float(default=0) - 5 < states('sensor.front_yard_thermostat_temperature') | float(default=0) %}
|
||||||
# {{'true'}}
|
# {{'true'}}
|
||||||
# {% else %}
|
# {% else %}
|
||||||
# {{ 'false' }}
|
# {{ 'false' }}
|
||||||
@@ -387,7 +387,7 @@ sensors:
|
|||||||
# unique_id: templatebinarysensor.cooler_outside
|
# unique_id: templatebinarysensor.cooler_outside
|
||||||
# friendly_name: Cooler Outside
|
# friendly_name: Cooler Outside
|
||||||
# value_template: >-
|
# value_template: >-
|
||||||
# {% if states('sensor.lacrosse_tx141thbv2_0_temperature') | float(default=0) + 5 < states('sensor.thermostat_temperature') | float(default=0) %}
|
# {% if states('sensor.front_yard_thermostat_temperature') | float(default=0) + 5 < states('sensor.thermostat_temperature') | float(default=0) %}
|
||||||
# {{'true'}}
|
# {{'true'}}
|
||||||
# {% else %}
|
# {% else %}
|
||||||
# {{ 'false' }}
|
# {{ 'false' }}
|
||||||
@@ -701,8 +701,8 @@ sensors:
|
|||||||
bridgets_bed:
|
bridgets_bed:
|
||||||
unique_id: templatebinarysensor.bridgets_bed
|
unique_id: templatebinarysensor.bridgets_bed
|
||||||
friendly_name: Bridget's Bed
|
friendly_name: Bridget's Bed
|
||||||
value_template: "{{ states('input_boolean.white_bed_occupied') }}"
|
value_template: "{{ states('binary_sensor.bed_presence_2d14a4_bed_occupied_either') }}"
|
||||||
icon_template: "{{ iif(is_state('input_boolean.white_bed_occupied','on'),'mdi:bed','mdi:bed-empty','mdi:bed-outline')}}"
|
icon_template: "{{ iif(is_state('binary_sensor.bed_presence_2d14a4_bed_occupied_either','on'),'mdi:bed','mdi:bed-empty','mdi:bed-outline')}}"
|
||||||
|
|
||||||
check_mail:
|
check_mail:
|
||||||
unique_id: templatebinarysensor.check_mail
|
unique_id: templatebinarysensor.check_mail
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
name: Podein Kids
|
name: Podein Kids
|
||||||
|
icon: mdi:alpha-p-box-outline
|
||||||
options:
|
options:
|
||||||
- Auto
|
- Auto
|
||||||
- Home
|
- Home
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
name: Weaver Kids
|
name: Weaver Kids
|
||||||
|
icon: mdi:alpha-w-box
|
||||||
options:
|
options:
|
||||||
- Auto
|
- Auto
|
||||||
- Home
|
- Home
|
||||||
|
|||||||
@@ -342,7 +342,7 @@ template:
|
|||||||
- trigger:
|
- trigger:
|
||||||
- platform: state
|
- platform: state
|
||||||
entity_id: binary_sensor.is_raining
|
entity_id: binary_sensor.is_raining
|
||||||
not_from:
|
not_to:
|
||||||
- "unknown"
|
- "unknown"
|
||||||
- "unavailable"
|
- "unavailable"
|
||||||
|
|
||||||
@@ -416,7 +416,7 @@ automation:
|
|||||||
to: "on"
|
to: "on"
|
||||||
|
|
||||||
- platform: state
|
- platform: state
|
||||||
entity_id: sensor.ecowitt_wh40_21917_precipitation
|
entity_id: sensor.rain_gauge_precipitation
|
||||||
not_to:
|
not_to:
|
||||||
- "unknown"
|
- "unknown"
|
||||||
- "unavailable"
|
- "unavailable"
|
||||||
@@ -433,7 +433,7 @@ automation:
|
|||||||
target:
|
target:
|
||||||
entity_id: notify.precipitation
|
entity_id: notify.precipitation
|
||||||
data:
|
data:
|
||||||
message: "{{now().strftime('%Y-%m-%d')}}T{{now().strftime('%H:%M:%S.%f')}},{{states('sensor.ecowitt_wh40_21917_precipitation')}},{{states('binary_sensor.is_raining')}},{{state_attr('binary_sensor.is_raining','sample_count')}},{{state_attr('binary_sensor.is_raining','sample_duration')}},{{state_attr('binary_sensor.is_raining','min_gradient')}},{{state_attr('binary_sensor.is_raining','gradient')}}"
|
message: "{{now().strftime('%Y-%m-%d')}}T{{now().strftime('%H:%M:%S.%f')}},{{states('sensor.rain_gauge_precipitation')}},{{states('binary_sensor.is_raining')}},{{state_attr('binary_sensor.is_raining','sample_count')}},{{state_attr('binary_sensor.is_raining','sample_duration')}},{{state_attr('binary_sensor.is_raining','min_gradient')}},{{state_attr('binary_sensor.is_raining','gradient')}}"
|
||||||
|
|
||||||
- alias: "Sprinkler: Reset After Automatic Run"
|
- alias: "Sprinkler: Reset After Automatic Run"
|
||||||
id: automation_sprinkler_reset_after_automatic_run
|
id: automation_sprinkler_reset_after_automatic_run
|
||||||
@@ -688,7 +688,7 @@ utility_meter:
|
|||||||
rain_quarter_hourly:
|
rain_quarter_hourly:
|
||||||
unique_id: utility_meter_rain_quarter_hourly
|
unique_id: utility_meter_rain_quarter_hourly
|
||||||
name: "Rain: Quarter Hourly"
|
name: "Rain: Quarter Hourly"
|
||||||
source: sensor.ecowitt_wh40_21917_precipitation
|
source: sensor.rain_gauge_precipitation
|
||||||
cycle: quarter-hourly
|
cycle: quarter-hourly
|
||||||
tariffs:
|
tariffs:
|
||||||
- Precipitation
|
- Precipitation
|
||||||
@@ -696,7 +696,7 @@ utility_meter:
|
|||||||
rain_hourly:
|
rain_hourly:
|
||||||
unique_id: utility_meter_rain_hourly
|
unique_id: utility_meter_rain_hourly
|
||||||
name: "Rain: Hourly"
|
name: "Rain: Hourly"
|
||||||
source: sensor.ecowitt_wh40_21917_precipitation
|
source: sensor.rain_gauge_precipitation
|
||||||
cycle: hourly
|
cycle: hourly
|
||||||
tariffs:
|
tariffs:
|
||||||
- Precipitation
|
- Precipitation
|
||||||
@@ -704,7 +704,7 @@ utility_meter:
|
|||||||
rain_daily:
|
rain_daily:
|
||||||
unique_id: utility_meter_rain_daily
|
unique_id: utility_meter_rain_daily
|
||||||
name: "Rain: Daily"
|
name: "Rain: Daily"
|
||||||
source: sensor.ecowitt_wh40_21917_precipitation
|
source: sensor.rain_gauge_precipitation
|
||||||
cycle: daily
|
cycle: daily
|
||||||
offset: "12:00"
|
offset: "12:00"
|
||||||
tariffs:
|
tariffs:
|
||||||
@@ -713,7 +713,7 @@ utility_meter:
|
|||||||
rain_monthly:
|
rain_monthly:
|
||||||
unique_id: utility_meter_rain_monthly
|
unique_id: utility_meter_rain_monthly
|
||||||
name: "Rain: Monthly"
|
name: "Rain: Monthly"
|
||||||
source: sensor.ecowitt_wh40_21917_precipitation
|
source: sensor.rain_gauge_precipitation
|
||||||
cycle: monthly
|
cycle: monthly
|
||||||
tariffs:
|
tariffs:
|
||||||
- Precipitation
|
- Precipitation
|
||||||
@@ -721,7 +721,7 @@ utility_meter:
|
|||||||
rain_yearly:
|
rain_yearly:
|
||||||
unique_id: utility_meter_rain_yearly
|
unique_id: utility_meter_rain_yearly
|
||||||
name: "Rain: Yearly"
|
name: "Rain: Yearly"
|
||||||
source: sensor.ecowitt_wh40_21917_precipitation
|
source: sensor.rain_gauge_precipitation
|
||||||
cycle: yearly
|
cycle: yearly
|
||||||
tariffs:
|
tariffs:
|
||||||
- Precipitation
|
- Precipitation
|
||||||
@@ -729,7 +729,7 @@ utility_meter:
|
|||||||
sprinkler_recent_rain:
|
sprinkler_recent_rain:
|
||||||
unique_id: utility_meter_sprinkler_recent_rain
|
unique_id: utility_meter_sprinkler_recent_rain
|
||||||
name: "Sprinkler: Recent Rain"
|
name: "Sprinkler: Recent Rain"
|
||||||
source: sensor.ecowitt_wh40_21917_precipitation
|
source: sensor.rain_gauge_precipitation
|
||||||
cycle: yearly
|
cycle: yearly
|
||||||
tariffs:
|
tariffs:
|
||||||
- Precipitation
|
- Precipitation
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ script:
|
|||||||
|
|
||||||
media_content_type:
|
media_content_type:
|
||||||
description: "The media content type of the specified media"
|
description: "The media content type of the specified media"
|
||||||
example: audio/mpeg
|
example: music
|
||||||
selector:
|
selector:
|
||||||
text:
|
text:
|
||||||
|
|
||||||
@@ -41,14 +41,28 @@ script:
|
|||||||
# If YTube Music Player is in use, play the announcement over those speakers
|
# If YTube Music Player is in use, play the announcement over those speakers
|
||||||
# If YTube Music Player is not in use, play the announcement over the media_player.announcements speaker group
|
# If YTube Music Player is not in use, play the announcement over the media_player.announcements speaker group
|
||||||
media_player: '{{ iif(entity_id is defined, entity_id, iif(is_state("media_player.ytube_music_player","playing") or is_state("media_player.ytube_music_player","idle") or is_state("media_player.ytube_music_player","paused"),state_attr("media_player.ytube_music_player","remote_player_id"),"media_player.announcements")) }}'
|
media_player: '{{ iif(entity_id is defined, entity_id, iif(is_state("media_player.ytube_music_player","playing") or is_state("media_player.ytube_music_player","idle") or is_state("media_player.ytube_music_player","paused"),state_attr("media_player.ytube_music_player","remote_player_id"),"media_player.announcements")) }}'
|
||||||
remote_player: '{{ state_attr("media_player.ytube_music_player","remote_player_id") }}'
|
remote_player: '{{ iif(entity_id is defined, entity_id, iif(is_state("media_player.ytube_music_player","playing") or is_state("media_player.ytube_music_player","idle") or is_state("media_player.ytube_music_player","paused"),state_attr("media_player.ytube_music_player","remote_player_id"),"")) }}'
|
||||||
content_id: '{{ iif(media_content_id is defined,media_content_id,"media-source://media_source/tts/welcome_to_daddys_house.mp3") }}'
|
content_id: '{{ iif(media_content_id is defined,media_content_id,"media-source://media_source/tts/welcome_to_daddys_house.mp3") }}'
|
||||||
content_type: '{{ iif(media_content_type is defined,media_content_type,"audio/mpeg") }}'
|
content_type: '{{ iif(media_content_type is defined,media_content_type,"music") }}'
|
||||||
volume: "{{ iif(volume is defined,volume,0.6) }}"
|
volume: "{{ iif(volume is defined,volume,0.6) }}"
|
||||||
original_volume: '{{ iif(is_state("media_player.ytube_music_player","off"),0.0,state_attr(state_attr("media_player.ytube_music_player","remote_player_id"), "volume_level")) }}'
|
original_volume: '{{ iif(is_state("media_player.ytube_music_player","off"),0.0)}}' #,state_attr(state_attr("media_player.ytube_music_player","remote_player_id"), "volume")) }}'
|
||||||
ytube_in_use: '{{ is_state("media_player.ytube_music_player","playing") or is_state("media_player.ytube_music_player","idle") or is_state("media_player.ytube_music_player","paused") }}'
|
ytube_in_use: '{{ is_state("media_player.ytube_music_player","playing") or is_state("media_player.ytube_music_player","idle") or is_state("media_player.ytube_music_player","paused") }}'
|
||||||
|
|
||||||
sequence:
|
sequence:
|
||||||
|
- action: logbook.log
|
||||||
|
data:
|
||||||
|
name: Clever Announcement Values
|
||||||
|
entity_id: script.make_clever_announcement
|
||||||
|
message: >
|
||||||
|
Hopefully this contains all of the values:
|
||||||
|
media_player: {{ media_player }}
|
||||||
|
content_id: {{ content_id }}
|
||||||
|
content_type: {{ content_type }}
|
||||||
|
volume: {{ volume }}
|
||||||
|
original_volume: {{ original_volume }}
|
||||||
|
ytube_in_use: {{ ytube_in_use }}
|
||||||
|
domain: script
|
||||||
|
|
||||||
- choose:
|
- choose:
|
||||||
- alias: "Ytube music player is playing something"
|
- alias: "Ytube music player is playing something"
|
||||||
conditions: "{{ ytube_in_use }}"
|
conditions: "{{ ytube_in_use }}"
|
||||||
@@ -65,15 +79,6 @@ script:
|
|||||||
minutes: 0
|
minutes: 0
|
||||||
seconds: 2
|
seconds: 2
|
||||||
|
|
||||||
# This looks to cause the first part of the message to be missed.
|
|
||||||
# Instead of initally muting the speakers, I'll just set them to the appropriate volume off the bat
|
|
||||||
# - alias: "Mute the announcement speakers momentarily"
|
|
||||||
# service: media_player.volume_set
|
|
||||||
# target:
|
|
||||||
# entity_id: '{{ media_player }}'
|
|
||||||
# data:
|
|
||||||
# volume_level: 0
|
|
||||||
|
|
||||||
- alias: "Set the volume on the announcement speakers"
|
- alias: "Set the volume on the announcement speakers"
|
||||||
service: media_player.volume_set
|
service: media_player.volume_set
|
||||||
target:
|
target:
|
||||||
@@ -81,12 +86,6 @@ script:
|
|||||||
data:
|
data:
|
||||||
volume_level: "{{volume}}"
|
volume_level: "{{volume}}"
|
||||||
|
|
||||||
# - alias: "Wait another bit for the volume to be set"
|
|
||||||
# delay:
|
|
||||||
# hours: 0
|
|
||||||
# minutes: 0
|
|
||||||
# seconds: 2
|
|
||||||
|
|
||||||
- alias: "Play the announcement"
|
- alias: "Play the announcement"
|
||||||
service: media_player.play_media
|
service: media_player.play_media
|
||||||
target:
|
target:
|
||||||
@@ -95,19 +94,6 @@ script:
|
|||||||
media_content_id: "{{content_id}}"
|
media_content_id: "{{content_id}}"
|
||||||
media_content_type: "{{content_type}}"
|
media_content_type: "{{content_type}}"
|
||||||
|
|
||||||
# This is now being done before the announcement is played
|
|
||||||
# - alias: "Set the volume on the announcement speakers"
|
|
||||||
# service: media_player.volume_set
|
|
||||||
# target:
|
|
||||||
# entity_id: '{{media_player}}'
|
|
||||||
# data:
|
|
||||||
# volume_level: '{{volume}}'
|
|
||||||
|
|
||||||
# Wait until media player is idle
|
|
||||||
# This doesn't seem to be working as written. Trying a wait_for_trigger instead
|
|
||||||
#- wait_template: "{{ is_state(media_player,'idle')}}"
|
|
||||||
|
|
||||||
# This shit doesn't work either
|
|
||||||
- alias: Wait for the specified media_player(s) to become idle
|
- alias: Wait for the specified media_player(s) to become idle
|
||||||
wait_for_trigger:
|
wait_for_trigger:
|
||||||
- platform: template
|
- platform: template
|
||||||
|
|||||||
@@ -30,7 +30,6 @@ recorder:
|
|||||||
- sensor.mail_updated
|
- sensor.mail_updated
|
||||||
- light.upstairs_public
|
- light.upstairs_public
|
||||||
- input_select.master_bedroom_camera
|
- input_select.master_bedroom_camera
|
||||||
- automation.cycle_cameras
|
|
||||||
- input_select.outdoor_camera_cycle
|
- input_select.outdoor_camera_cycle
|
||||||
- input_select.indoor_camera_cycle
|
- input_select.indoor_camera_cycle
|
||||||
- sensor.nws_alerts_last_updated
|
- sensor.nws_alerts_last_updated
|
||||||
|
|||||||
@@ -13,5 +13,4 @@ sensor:
|
|||||||
name: Lowest Ecowitt Battery
|
name: Lowest Ecowitt Battery
|
||||||
type: min
|
type: min
|
||||||
entity_ids:
|
entity_ids:
|
||||||
- sensor.fineoffset_wh51_0ce593_battery
|
- sensor.hasta_soil_sensor_battery
|
||||||
|
|
||||||
|
|||||||
@@ -44,11 +44,24 @@ plant:
|
|||||||
min_conductivity: 10
|
min_conductivity: 10
|
||||||
max_conductivity: 5700
|
max_conductivity: 5700
|
||||||
|
|
||||||
fineoffset_wh51_0ce593:
|
hasta_soil_sensor:
|
||||||
sensors:
|
sensors:
|
||||||
moisture: sensor.fineoffset_wh51_0ce593_moisture
|
moisture: sensor.hasta_soil_sensor_moisture
|
||||||
temperature: sensor.outdoor_temperature
|
temperature: sensor.outdoor_temperature
|
||||||
battery: sensor.fineoffset_wh51_0ce593_battery
|
battery: sensor.hasta_soil_sensor_battery
|
||||||
|
brightness: sensor.outdoors_mean_illuminance
|
||||||
|
min_moisture: 15
|
||||||
|
max_moisture: 80
|
||||||
|
min_brightness: 200
|
||||||
|
max_brightness: 300000
|
||||||
|
min_temperature: -30
|
||||||
|
max_temperature: 120
|
||||||
|
|
||||||
|
daisy_soil_sensor:
|
||||||
|
sensors:
|
||||||
|
moisture: sensor.daisy_soil_sensor_moisture
|
||||||
|
temperature: sensor.outdoor_temperature
|
||||||
|
battery: sensor.daisy_soil_sensor_battery
|
||||||
brightness: sensor.outdoors_mean_illuminance
|
brightness: sensor.outdoors_mean_illuminance
|
||||||
min_moisture: 15
|
min_moisture: 15
|
||||||
max_moisture: 80
|
max_moisture: 80
|
||||||
|
|||||||
@@ -4,14 +4,13 @@ mqtt:
|
|||||||
device_class: timestamp
|
device_class: timestamp
|
||||||
icon: mdi:clock-in
|
icon: mdi:clock-in
|
||||||
state_topic: "rtl_433/9b13b3f4-rtl433/devices/Acurite-Tower/A/6162/time"
|
state_topic: "rtl_433/9b13b3f4-rtl433/devices/Acurite-Tower/A/6162/time"
|
||||||
force_update: true
|
|
||||||
entity_category: diagnostic
|
entity_category: diagnostic
|
||||||
unique_id: AcuriteTower-6162-A-UTC
|
unique_id: acurite-tower-1-a-time
|
||||||
device:
|
device:
|
||||||
identifiers: AcuriteTower-6162-A
|
identifiers: acurite-tower-1-a
|
||||||
name: Acurite 592TXR A
|
name: Back Yard Thermostat
|
||||||
model: Acurite 592TXR
|
model: Tower
|
||||||
manufacturer: rtl_433
|
manufacturer: Acurite
|
||||||
|
|
||||||
- name: "Battery"
|
- name: "Battery"
|
||||||
device_class: battery
|
device_class: battery
|
||||||
@@ -20,13 +19,12 @@ mqtt:
|
|||||||
state_class: measurement
|
state_class: measurement
|
||||||
entity_category: diagnostic
|
entity_category: diagnostic
|
||||||
state_topic: "rtl_433/9b13b3f4-rtl433/devices/Acurite-Tower/A/6162/battery_ok"
|
state_topic: "rtl_433/9b13b3f4-rtl433/devices/Acurite-Tower/A/6162/battery_ok"
|
||||||
force_update: true
|
unique_id: acurite-tower-1-a-battery-ok
|
||||||
unique_id: AcuriteTower-6162-A-B
|
|
||||||
device:
|
device:
|
||||||
identifiers: AcuriteTower-6162-A
|
identifiers: acurite-tower-1-a
|
||||||
name: Acurite 592TXR A
|
name: Back Yard Thermostat
|
||||||
model: Acurite 592TXRv2
|
model: Tower
|
||||||
manufacturer: rtl_433
|
manufacturer: Acurite
|
||||||
|
|
||||||
- name: "Temperature"
|
- name: "Temperature"
|
||||||
device_class: temperature
|
device_class: temperature
|
||||||
@@ -34,13 +32,12 @@ mqtt:
|
|||||||
value_template: "{{ value|float }}"
|
value_template: "{{ value|float }}"
|
||||||
state_class: measurement
|
state_class: measurement
|
||||||
state_topic: "rtl_433/9b13b3f4-rtl433/devices/Acurite-Tower/A/6162/temperature_C"
|
state_topic: "rtl_433/9b13b3f4-rtl433/devices/Acurite-Tower/A/6162/temperature_C"
|
||||||
force_update: true
|
unique_id: acurite-tower-1-a-temperature-c
|
||||||
unique_id: AcuriteTower-6162-A-T
|
|
||||||
device:
|
device:
|
||||||
identifiers: AcuriteTower-6162-A
|
identifiers: acurite-tower-1-a
|
||||||
name: Acurite 592TXR A
|
name: Back Yard Thermostat
|
||||||
model: Acurite 592TXR
|
model: Tower
|
||||||
manufacturer: rtl_433
|
manufacturer: Acurite
|
||||||
|
|
||||||
- name: "Humidity"
|
- name: "Humidity"
|
||||||
device_class: humidity
|
device_class: humidity
|
||||||
@@ -48,10 +45,9 @@ mqtt:
|
|||||||
value_template: "{{ value|float }}"
|
value_template: "{{ value|float }}"
|
||||||
state_class: measurement
|
state_class: measurement
|
||||||
state_topic: "rtl_433/9b13b3f4-rtl433/devices/Acurite-Tower/A/6162/humidity"
|
state_topic: "rtl_433/9b13b3f4-rtl433/devices/Acurite-Tower/A/6162/humidity"
|
||||||
force_update: true
|
unique_id: acurite-tower-1-a-humidity
|
||||||
unique_id: AcuriteTower-6162-A-H
|
|
||||||
device:
|
device:
|
||||||
identifiers: AcuriteTower-6162-A
|
identifiers: acurite-tower-1-a
|
||||||
name: Acurite 592TXR A
|
name: Back Yard Thermostat
|
||||||
model: Acurite 592TXR
|
model: Tower
|
||||||
manufacturer: rtl_433
|
manufacturer: Acurite
|
||||||
|
|||||||
@@ -0,0 +1,12 @@
|
|||||||
|
mqtt:
|
||||||
|
device_tracker:
|
||||||
|
- name: "Location"
|
||||||
|
icon: mdi:car-estate
|
||||||
|
json_attributes_topic: "cleverdevices/clever_traverse/attributes"
|
||||||
|
unique_id: chevrolet-traverse-lt-awd
|
||||||
|
device:
|
||||||
|
name: Chevrolet Traverse
|
||||||
|
identifiers: chevrolet-traverse-lt-awd
|
||||||
|
model_id: LT AWD
|
||||||
|
model: Traverse
|
||||||
|
manufacturer: Chevrolet
|
||||||
@@ -0,0 +1,42 @@
|
|||||||
|
mqtt:
|
||||||
|
sensor:
|
||||||
|
- name: "Timestamp"
|
||||||
|
device_class: timestamp
|
||||||
|
icon: mdi:clock-in
|
||||||
|
state_topic: "rtl_433/9b13b3f4-rtl433/devices/Fineoffset-WH51/00e1cd/time"
|
||||||
|
entity_category: diagnostic
|
||||||
|
unique_id: fine-offset-wh51-daisy-time
|
||||||
|
device:
|
||||||
|
identifiers: ecowitt-wh51-daisy
|
||||||
|
name: Daisy Soil Sensor
|
||||||
|
model: WH51
|
||||||
|
manufacturer: Ecowitt
|
||||||
|
|
||||||
|
- name: "Battery"
|
||||||
|
device_class: battery
|
||||||
|
unit_of_measurement: "%"
|
||||||
|
value_template: "{{ (float(value) * 99 + 1) | round(0) }}"
|
||||||
|
state_class: measurement
|
||||||
|
entity_category: diagnostic
|
||||||
|
state_topic: "rtl_433/9b13b3f4-rtl433/devices/Fineoffset-WH51/00e1cd/battery_ok"
|
||||||
|
unique_id: fine-offset-wh51-battery-ok
|
||||||
|
device:
|
||||||
|
identifiers: ecowitt-wh51-daisy
|
||||||
|
name: Daisy Soil Sensor
|
||||||
|
model: WH51
|
||||||
|
manufacturer: Ecowitt
|
||||||
|
|
||||||
|
- name: "Moisture"
|
||||||
|
device_class: moisture
|
||||||
|
unit_of_measurement: "%"
|
||||||
|
value_template: "{{ value|float }}"
|
||||||
|
state_class: measurement
|
||||||
|
state_topic: "rtl_433/9b13b3f4-rtl433/devices/Fineoffset-WH51/00e1cd/moisture"
|
||||||
|
unique_id: fine-offset-wh51-daisy-moisture
|
||||||
|
device:
|
||||||
|
identifiers: ecowitt-wh51-daisy
|
||||||
|
name: Daisy Soil Sensor
|
||||||
|
model: WH51
|
||||||
|
manufacturer: Ecowitt
|
||||||
|
|
||||||
|
|
||||||
@@ -4,14 +4,13 @@ mqtt:
|
|||||||
device_class: timestamp
|
device_class: timestamp
|
||||||
icon: mdi:clock-in
|
icon: mdi:clock-in
|
||||||
state_topic: "rtl_433/9b13b3f4-rtl433/devices/Nexus-TH/1/44/time"
|
state_topic: "rtl_433/9b13b3f4-rtl433/devices/Nexus-TH/1/44/time"
|
||||||
force_update: true
|
|
||||||
entity_category: diagnostic
|
entity_category: diagnostic
|
||||||
unique_id: Nexus-TH-1-UTC
|
unique_id: nexus-th-1-time
|
||||||
device:
|
device:
|
||||||
identifiers: Nexus-TH-1
|
identifiers: nexus-th-1
|
||||||
name: Nexus-TH-1
|
name: Deck Thermostat
|
||||||
model: Nexus-TH
|
model: TH
|
||||||
manufacturer: rtl_433
|
manufacturer: Nexus
|
||||||
|
|
||||||
- name: "Battery"
|
- name: "Battery"
|
||||||
device_class: battery
|
device_class: battery
|
||||||
@@ -20,13 +19,12 @@ mqtt:
|
|||||||
state_class: measurement
|
state_class: measurement
|
||||||
entity_category: diagnostic
|
entity_category: diagnostic
|
||||||
state_topic: "rtl_433/9b13b3f4-rtl433/devices/Nexus-TH/1/44/battery_ok"
|
state_topic: "rtl_433/9b13b3f4-rtl433/devices/Nexus-TH/1/44/battery_ok"
|
||||||
force_update: true
|
unique_id: nexus-th-1-battery-ok
|
||||||
unique_id: Nexus-TH-1-B
|
|
||||||
device:
|
device:
|
||||||
identifiers: Nexus-TH-1
|
identifiers: nexus-th-1
|
||||||
name: Nexus-TH-1
|
name: Deck Thermostat
|
||||||
model: Nexus-TH
|
model: TH
|
||||||
manufacturer: rtl_433
|
manufacturer: Nexus
|
||||||
|
|
||||||
- name: "Temperature"
|
- name: "Temperature"
|
||||||
device_class: temperature
|
device_class: temperature
|
||||||
@@ -34,13 +32,12 @@ mqtt:
|
|||||||
value_template: "{{ value|float }}"
|
value_template: "{{ value|float }}"
|
||||||
state_class: measurement
|
state_class: measurement
|
||||||
state_topic: "rtl_433/9b13b3f4-rtl433/devices/Nexus-TH/1/44/temperature_C"
|
state_topic: "rtl_433/9b13b3f4-rtl433/devices/Nexus-TH/1/44/temperature_C"
|
||||||
force_update: true
|
unique_id: nexus-th-1-temperature-c
|
||||||
unique_id: Nexus-TH-1-T
|
|
||||||
device:
|
device:
|
||||||
identifiers: Nexus-TH-1
|
identifiers: nexus-th-1
|
||||||
name: Nexus-TH-1
|
name: Deck Thermostat
|
||||||
model: Nexus-TH
|
model: TH
|
||||||
manufacturer: rtl_433
|
manufacturer: Nexus
|
||||||
|
|
||||||
- name: "Humidity"
|
- name: "Humidity"
|
||||||
device_class: humidity
|
device_class: humidity
|
||||||
@@ -48,10 +45,9 @@ mqtt:
|
|||||||
value_template: "{{ value|float }}"
|
value_template: "{{ value|float }}"
|
||||||
state_class: measurement
|
state_class: measurement
|
||||||
state_topic: "rtl_433/9b13b3f4-rtl433/devices/Nexus-TH/1/44/humidity"
|
state_topic: "rtl_433/9b13b3f4-rtl433/devices/Nexus-TH/1/44/humidity"
|
||||||
force_update: true
|
unique_id: nexus-th-1-humidity
|
||||||
unique_id: Nexus-TH-1-H
|
|
||||||
device:
|
device:
|
||||||
identifiers: Nexus-TH-1
|
identifiers: nexus-th-1
|
||||||
name: Nexus-TH-1
|
name: Deck Thermostat
|
||||||
model: Nexus-TH
|
model: TH
|
||||||
manufacturer: rtl_433
|
manufacturer: Nexus
|
||||||
|
|||||||
+20
-24
@@ -4,14 +4,13 @@ mqtt:
|
|||||||
device_class: timestamp
|
device_class: timestamp
|
||||||
icon: mdi:clock-in
|
icon: mdi:clock-in
|
||||||
state_topic: "rtl_433/9b13b3f4-rtl433/devices/LaCrosse-TX141THBv2/0/233/time"
|
state_topic: "rtl_433/9b13b3f4-rtl433/devices/LaCrosse-TX141THBv2/0/233/time"
|
||||||
force_update: true
|
|
||||||
entity_category: diagnostic
|
entity_category: diagnostic
|
||||||
unique_id: LaCrosse-TX141THBv2-0-UTC
|
unique_id: lacrosse-tx141thbv2-0-time
|
||||||
device:
|
device:
|
||||||
identifiers: LaCrosse-TX141THBv2-0
|
identifiers: lacrosse-tx141thbv2-0
|
||||||
name: LaCrosse-TX141THBv2-0
|
name: Front Yard Thermostat
|
||||||
model: LaCrosse-TX141THBv2
|
model: TX141THBv2
|
||||||
manufacturer: rtl_433
|
manufacturer: LaCrosse
|
||||||
|
|
||||||
- name: "Battery"
|
- name: "Battery"
|
||||||
device_class: battery
|
device_class: battery
|
||||||
@@ -20,13 +19,12 @@ mqtt:
|
|||||||
state_class: measurement
|
state_class: measurement
|
||||||
entity_category: diagnostic
|
entity_category: diagnostic
|
||||||
state_topic: "rtl_433/9b13b3f4-rtl433/devices/LaCrosse-TX141THBv2/0/233/battery_ok"
|
state_topic: "rtl_433/9b13b3f4-rtl433/devices/LaCrosse-TX141THBv2/0/233/battery_ok"
|
||||||
force_update: true
|
unique_id: lacrosse-tx141thbv2-0-battery-ok
|
||||||
unique_id: LaCrosse-TX141THBv2-0-B
|
|
||||||
device:
|
device:
|
||||||
identifiers: LaCrosse-TX141THBv2-0
|
identifiers: lacrosse-tx141thbv2-0
|
||||||
name: LaCrosse-TX141THBv2-0
|
name: Front Yard Thermostat
|
||||||
model: LaCrosse-TX141THBv2
|
model: TX141THBv2
|
||||||
manufacturer: rtl_433
|
manufacturer: LaCrosse
|
||||||
|
|
||||||
- name: "Temperature"
|
- name: "Temperature"
|
||||||
device_class: temperature
|
device_class: temperature
|
||||||
@@ -34,13 +32,12 @@ mqtt:
|
|||||||
value_template: "{{ value|float }}"
|
value_template: "{{ value|float }}"
|
||||||
state_class: measurement
|
state_class: measurement
|
||||||
state_topic: "rtl_433/9b13b3f4-rtl433/devices/LaCrosse-TX141THBv2/0/233/temperature_C"
|
state_topic: "rtl_433/9b13b3f4-rtl433/devices/LaCrosse-TX141THBv2/0/233/temperature_C"
|
||||||
force_update: true
|
unique_id: lacrosse-tx141thbv2-0-temperature-c
|
||||||
unique_id: LaCrosse-TX141THBv2-0-T
|
|
||||||
device:
|
device:
|
||||||
identifiers: LaCrosse-TX141THBv2-0
|
identifiers: lacrosse-tx141thbv2-0
|
||||||
name: LaCrosse-TX141THBv2-0
|
name: Front Yard Thermostat
|
||||||
model: LaCrosse-TX141THBv2
|
model: TX141THBv2
|
||||||
manufacturer: rtl_433
|
manufacturer: LaCrosse
|
||||||
|
|
||||||
- name: "Humidity"
|
- name: "Humidity"
|
||||||
device_class: humidity
|
device_class: humidity
|
||||||
@@ -48,10 +45,9 @@ mqtt:
|
|||||||
value_template: "{{ value|float }}"
|
value_template: "{{ value|float }}"
|
||||||
state_class: measurement
|
state_class: measurement
|
||||||
state_topic: "rtl_433/9b13b3f4-rtl433/devices/LaCrosse-TX141THBv2/0/233/humidity"
|
state_topic: "rtl_433/9b13b3f4-rtl433/devices/LaCrosse-TX141THBv2/0/233/humidity"
|
||||||
force_update: true
|
unique_id: lacrosse-tx141thbv2-0-humidity
|
||||||
unique_id: LaCrosse-TX141THBv2-0-H
|
|
||||||
device:
|
device:
|
||||||
identifiers: LaCrosse-TX141THBv2-0
|
identifiers: lacrosse-tx141thbv2-0
|
||||||
name: LaCrosse-TX141THBv2-0
|
name: Front Yard Thermostat
|
||||||
model: LaCrosse-TX141THBv2
|
model: TX141THBv2
|
||||||
manufacturer: rtl_433
|
manufacturer: LaCrosse
|
||||||
+15
-19
@@ -1,18 +1,16 @@
|
|||||||
# Green Ziptie
|
|
||||||
mqtt:
|
mqtt:
|
||||||
sensor:
|
sensor:
|
||||||
- name: "Timestamp"
|
- name: "Timestamp"
|
||||||
device_class: timestamp
|
device_class: timestamp
|
||||||
icon: mdi:clock-in
|
icon: mdi:clock-in
|
||||||
state_topic: "rtl_433/9b13b3f4-rtl433/devices/Fineoffset-WH51/0ce593/time"
|
state_topic: "rtl_433/9b13b3f4-rtl433/devices/Fineoffset-WH51/0ce593/time"
|
||||||
force_update: true
|
|
||||||
entity_category: diagnostic
|
entity_category: diagnostic
|
||||||
unique_id: Fineoffset-WH51-0ce593-UTC
|
unique_id: fine-offset-wh51-hasta-time
|
||||||
device:
|
device:
|
||||||
identifiers: Fineoffset-WH51-0ce593
|
identifiers: ecowitt-wh51-hasta
|
||||||
name: Fineoffset-WH51-0ce593
|
name: Hasta Soil Sensor
|
||||||
model: Fineoffset-WH51
|
model: WH51
|
||||||
manufacturer: rtl_433
|
manufacturer: Ecowitt
|
||||||
|
|
||||||
- name: "Battery"
|
- name: "Battery"
|
||||||
device_class: battery
|
device_class: battery
|
||||||
@@ -21,13 +19,12 @@ mqtt:
|
|||||||
state_class: measurement
|
state_class: measurement
|
||||||
entity_category: diagnostic
|
entity_category: diagnostic
|
||||||
state_topic: "rtl_433/9b13b3f4-rtl433/devices/Fineoffset-WH51/0ce593/battery_ok"
|
state_topic: "rtl_433/9b13b3f4-rtl433/devices/Fineoffset-WH51/0ce593/battery_ok"
|
||||||
force_update: true
|
unique_id: fine-offset-wh51-hasta-battery-ok
|
||||||
unique_id: Fineoffset-WH51-0ce593-B
|
|
||||||
device:
|
device:
|
||||||
identifiers: Fineoffset-WH51-0ce593
|
identifiers: ecowitt-wh51-hasta
|
||||||
name: Fineoffset-WH51-0ce593
|
name: Hasta Soil Sensor
|
||||||
model: Fineoffset-WH51
|
model: WH51
|
||||||
manufacturer: rtl_433
|
manufacturer: Ecowitt
|
||||||
|
|
||||||
- name: "Moisture"
|
- name: "Moisture"
|
||||||
device_class: moisture
|
device_class: moisture
|
||||||
@@ -35,10 +32,9 @@ mqtt:
|
|||||||
value_template: "{{ value|float }}"
|
value_template: "{{ value|float }}"
|
||||||
state_class: measurement
|
state_class: measurement
|
||||||
state_topic: "rtl_433/9b13b3f4-rtl433/devices/Fineoffset-WH51/0ce593/moisture"
|
state_topic: "rtl_433/9b13b3f4-rtl433/devices/Fineoffset-WH51/0ce593/moisture"
|
||||||
force_update: true
|
unique_id: fine-offset-wh51-0ce593-moisture
|
||||||
unique_id: Fineoffset-WH51-0ce593-H
|
|
||||||
device:
|
device:
|
||||||
identifiers: Fineoffset-WH51-0ce593
|
identifiers: ecowitt-wh51-hasta
|
||||||
name: Fineoffset-WH51-0ce593
|
name: Hasta Soil Sensor
|
||||||
model: Fineoffset-WH51
|
model: WH51
|
||||||
manufacturer: rtl_433
|
manufacturer: Ecowitt
|
||||||
@@ -4,14 +4,14 @@ mqtt:
|
|||||||
device_class: timestamp
|
device_class: timestamp
|
||||||
icon: mdi:clock-in
|
icon: mdi:clock-in
|
||||||
state_topic: "rtl_433/9b13b3f4-rtl433/devices/Acurite-986/2F/42383/time"
|
state_topic: "rtl_433/9b13b3f4-rtl433/devices/Acurite-986/2F/42383/time"
|
||||||
force_update: true
|
|
||||||
entity_category: diagnostic
|
entity_category: diagnostic
|
||||||
unique_id: Acurite-986-2F-42383-UTC
|
unique_id: acurite-986-2f-time
|
||||||
device:
|
device:
|
||||||
identifiers: Acurite-986-2F-42383
|
identifiers: acurite-986-2f
|
||||||
name: Acurite-986-2F-42383
|
name: Kitchen Freezer Thermostat
|
||||||
model: Acurite-986
|
model_id: 2F
|
||||||
manufacturer: rtl_433
|
model: 986
|
||||||
|
manufacturer: Acurite
|
||||||
|
|
||||||
- name: "Battery"
|
- name: "Battery"
|
||||||
device_class: battery
|
device_class: battery
|
||||||
@@ -20,13 +20,13 @@ mqtt:
|
|||||||
state_class: measurement
|
state_class: measurement
|
||||||
entity_category: diagnostic
|
entity_category: diagnostic
|
||||||
state_topic: "rtl_433/9b13b3f4-rtl433/devices/Acurite-986/2F/42383/battery_ok"
|
state_topic: "rtl_433/9b13b3f4-rtl433/devices/Acurite-986/2F/42383/battery_ok"
|
||||||
force_update: true
|
unique_id: acurite-986-2f-battery-ok
|
||||||
unique_id: Acurite-986-2F-42383-B
|
|
||||||
device:
|
device:
|
||||||
identifiers: Acurite-986-2F-42383
|
identifiers: acurite-986-2f
|
||||||
name: Acurite-986-2F-42383
|
name: Kitchen Freezer Thermostat
|
||||||
model: Acurite-986
|
model_id: 2F
|
||||||
manufacturer: rtl_433
|
model: 986
|
||||||
|
manufacturer: Acurite
|
||||||
|
|
||||||
- name: "Temperature"
|
- name: "Temperature"
|
||||||
device_class: temperature
|
device_class: temperature
|
||||||
@@ -34,10 +34,10 @@ mqtt:
|
|||||||
value_template: "{{ value|float }}"
|
value_template: "{{ value|float }}"
|
||||||
state_class: measurement
|
state_class: measurement
|
||||||
state_topic: "rtl_433/9b13b3f4-rtl433/devices/Acurite-986/2F/42383/temperature_C"
|
state_topic: "rtl_433/9b13b3f4-rtl433/devices/Acurite-986/2F/42383/temperature_C"
|
||||||
force_update: true
|
unique_id: acurite-986-2f-temperature-c
|
||||||
unique_id: Acurite-986-2F-42383-T
|
|
||||||
device:
|
device:
|
||||||
identifiers: Acurite-986-2F-42383
|
identifiers: acurite-986-2f
|
||||||
name: Acurite-986-2F-42383
|
name: Kitchen Freezer Thermostat
|
||||||
model: Acurite-986
|
model_id: 2F
|
||||||
manufacturer: rtl_433
|
model: 986
|
||||||
|
manufacturer: Acurite
|
||||||
@@ -4,14 +4,14 @@ mqtt:
|
|||||||
device_class: timestamp
|
device_class: timestamp
|
||||||
icon: mdi:clock-in
|
icon: mdi:clock-in
|
||||||
state_topic: "rtl_433/9b13b3f4-rtl433/devices/Acurite-986/1R/48226/time"
|
state_topic: "rtl_433/9b13b3f4-rtl433/devices/Acurite-986/1R/48226/time"
|
||||||
force_update: true
|
|
||||||
entity_category: diagnostic
|
entity_category: diagnostic
|
||||||
unique_id: Acurite-986-1R-48226-UTC
|
unique_id: acurite-986-1r-time
|
||||||
device:
|
device:
|
||||||
identifiers: Acurite-986-1R-48226
|
identifiers: acurite-986-1r
|
||||||
name: Acurite-986-1R-48226
|
name: Kitchen Fridge Thermostat
|
||||||
model: Acurite-986
|
model_id: 1R
|
||||||
manufacturer: rtl_433
|
model: 986
|
||||||
|
manufacturer: Acurite
|
||||||
|
|
||||||
- name: "Battery"
|
- name: "Battery"
|
||||||
device_class: battery
|
device_class: battery
|
||||||
@@ -20,13 +20,13 @@ mqtt:
|
|||||||
state_class: measurement
|
state_class: measurement
|
||||||
entity_category: diagnostic
|
entity_category: diagnostic
|
||||||
state_topic: "rtl_433/9b13b3f4-rtl433/devices/Acurite-986/1R/48226/battery_ok"
|
state_topic: "rtl_433/9b13b3f4-rtl433/devices/Acurite-986/1R/48226/battery_ok"
|
||||||
force_update: true
|
unique_id: acurite-986-1r-battery-ok
|
||||||
unique_id: Acurite-986-1R-48226-B
|
|
||||||
device:
|
device:
|
||||||
identifiers: Acurite-986-1R-48226
|
identifiers: acurite-986-1r
|
||||||
name: Acurite-986-1R-48226
|
name: Kitchen Fridge Thermostat
|
||||||
model: Acurite-986
|
model_id: 1R
|
||||||
manufacturer: rtl_433
|
model: 986
|
||||||
|
manufacturer: Acurite
|
||||||
|
|
||||||
- name: "Temperature"
|
- name: "Temperature"
|
||||||
device_class: temperature
|
device_class: temperature
|
||||||
@@ -34,10 +34,10 @@ mqtt:
|
|||||||
value_template: "{{ value|float }}"
|
value_template: "{{ value|float }}"
|
||||||
state_class: measurement
|
state_class: measurement
|
||||||
state_topic: "rtl_433/9b13b3f4-rtl433/devices/Acurite-986/1R/48226/temperature_C"
|
state_topic: "rtl_433/9b13b3f4-rtl433/devices/Acurite-986/1R/48226/temperature_C"
|
||||||
force_update: true
|
unique_id: acurite-986-1r-temperature-c
|
||||||
unique_id: Acurite-986-1R-48226-H
|
|
||||||
device:
|
device:
|
||||||
identifiers: Acurite-986-1R-48226
|
identifiers: acurite-986-1r
|
||||||
name: Acurite-986-1R-48226
|
name: Kitchen Fridge Thermostat
|
||||||
model: Acurite-986
|
model_id: 1R
|
||||||
manufacturer: rtl_433
|
model: 986
|
||||||
|
manufacturer: Acurite
|
||||||
@@ -1,73 +0,0 @@
|
|||||||
mqtt:
|
|
||||||
sensor:
|
|
||||||
- name: "Timestamp"
|
|
||||||
device_class: timestamp
|
|
||||||
icon: mdi:clock-in
|
|
||||||
state_topic: "rtl_433/9b13b3f4-rtl433/devices/EcoWitt-WH40/21917/time"
|
|
||||||
force_update: true
|
|
||||||
entity_category: diagnostic
|
|
||||||
unique_id: EcoWitt-WH40-21917-UTC
|
|
||||||
device:
|
|
||||||
identifiers: EcoWitt-WH40-21917
|
|
||||||
name: EcoWitt-WH40-21917
|
|
||||||
model: EcoWitt-WH40
|
|
||||||
manufacturer: rtl_433
|
|
||||||
|
|
||||||
# - name: "Data"
|
|
||||||
# value_template: "{{ value }}"
|
|
||||||
# state_class: measurement
|
|
||||||
# entity_category: diagnostic
|
|
||||||
# state_topic: "rtl_433/9b13b3f4-rtl433/devices/EcoWitt-WH40/21917/data"
|
|
||||||
# force_update: true
|
|
||||||
# unique_id: EcoWitt-WH40-21917-D
|
|
||||||
# device:
|
|
||||||
# identifiers: EcoWitt-WH40-21917
|
|
||||||
# name: EcoWitt-WH40-21917
|
|
||||||
# model: EcoWitt-WH40
|
|
||||||
# manufacturer: rtl_433
|
|
||||||
|
|
||||||
- name: "Precipitation"
|
|
||||||
device_class: precipitation
|
|
||||||
unit_of_measurement: "mm"
|
|
||||||
value_template: "{{ value|float }}"
|
|
||||||
state_class: measurement
|
|
||||||
state_topic: "rtl_433/9b13b3f4-rtl433/devices/EcoWitt-WH40/21917/rain_mm"
|
|
||||||
force_update: true
|
|
||||||
unique_id: EcoWitt-WH40-21917-H
|
|
||||||
device:
|
|
||||||
identifiers: EcoWitt-WH40-21917
|
|
||||||
name: EcoWitt-WH40-21917
|
|
||||||
model: EcoWitt-WH40
|
|
||||||
manufacturer: rtl_433
|
|
||||||
|
|
||||||
- name: "Battery"
|
|
||||||
device_class: battery
|
|
||||||
unit_of_measurement: "%"
|
|
||||||
value_template: "{{ (float(value) / 1.5) * 100 | round(0) }}"
|
|
||||||
state_class: measurement
|
|
||||||
entity_category: diagnostic
|
|
||||||
state_topic: "rtl_433/9b13b3f4-rtl433/devices/EcoWitt-WH40/21917/battery_V"
|
|
||||||
force_update: true
|
|
||||||
unique_id: EcoWitt-WH40-21917-V
|
|
||||||
device:
|
|
||||||
identifiers: EcoWitt-WH40-21917
|
|
||||||
name: EcoWitt-WH40-21917
|
|
||||||
model: EcoWitt-WH40
|
|
||||||
manufacturer: rtl_433
|
|
||||||
|
|
||||||
binary_sensor:
|
|
||||||
|
|
||||||
- name: "Battery OK"
|
|
||||||
value_template: "{{ value|int }}"
|
|
||||||
device_class: problem
|
|
||||||
entity_category: diagnostic
|
|
||||||
state_topic: "rtl_433/9b13b3f4-rtl433/devices/EcoWitt-WH40/21917/battery_ok"
|
|
||||||
payload_on: "1"
|
|
||||||
payload_off: "0"
|
|
||||||
force_update: true
|
|
||||||
unique_id: EcoWitt-WH40-21917-Battery-OK
|
|
||||||
device:
|
|
||||||
identifiers: EcoWitt-WH40-21917
|
|
||||||
name: EcoWitt-WH40-21917
|
|
||||||
model: EcoWitt-WH40
|
|
||||||
manufacturer: rtl_433
|
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
mqtt:
|
||||||
|
device_tracker:
|
||||||
|
- name: Kristy's Phone
|
||||||
|
icon: mdi:cellphone
|
||||||
|
json_attributes_topic: "cleverdevices/kristy_s_phone/attributes"
|
||||||
|
unique_id: kristys-phone
|
||||||
|
|
||||||
|
- name: nmap_tracker_fe_cf_82_b2_22_e0
|
||||||
|
icon: mdi:cellphone
|
||||||
|
json_attributes_topic: "cleverdevices/marshalls_phone/attributes"
|
||||||
|
unique_id: marshalls-phone
|
||||||
@@ -0,0 +1,55 @@
|
|||||||
|
mqtt:
|
||||||
|
sensor:
|
||||||
|
- name: "Timestamp"
|
||||||
|
device_class: timestamp
|
||||||
|
icon: mdi:clock-in
|
||||||
|
state_topic: "rtl_433/9b13b3f4-rtl433/devices/EcoWitt-WH40/21917/time"
|
||||||
|
entity_category: diagnostic
|
||||||
|
unique_id: ecowitt-wh40-time
|
||||||
|
device:
|
||||||
|
identifiers: ecowitt-wh40
|
||||||
|
name: Rain Gauge
|
||||||
|
model: WH40
|
||||||
|
manufacturer: EcoWitt
|
||||||
|
|
||||||
|
- name: "Precipitation"
|
||||||
|
device_class: precipitation
|
||||||
|
unit_of_measurement: "mm"
|
||||||
|
value_template: "{{ value|float }}"
|
||||||
|
state_class: measurement
|
||||||
|
state_topic: "rtl_433/9b13b3f4-rtl433/devices/EcoWitt-WH40/21917/rain_mm"
|
||||||
|
unique_id: ecowitt-wh40-rain-mm
|
||||||
|
device:
|
||||||
|
identifiers: ecowitt-wh40
|
||||||
|
name: Rain Gauge
|
||||||
|
model: WH40
|
||||||
|
manufacturer: EcoWitt
|
||||||
|
|
||||||
|
- name: "Battery"
|
||||||
|
device_class: battery
|
||||||
|
unit_of_measurement: "%"
|
||||||
|
value_template: "{{ (float(value) / 1.5) * 100 | round(0) }}"
|
||||||
|
state_class: measurement
|
||||||
|
entity_category: diagnostic
|
||||||
|
state_topic: "rtl_433/9b13b3f4-rtl433/devices/EcoWitt-WH40/21917/battery_V"
|
||||||
|
unique_id: ecowitt-wh40-battery-v
|
||||||
|
device:
|
||||||
|
identifiers: ecowitt-wh40
|
||||||
|
name: Rain Gauge
|
||||||
|
model: WH40
|
||||||
|
manufacturer: EcoWitt
|
||||||
|
|
||||||
|
binary_sensor:
|
||||||
|
- name: "Battery OK"
|
||||||
|
value_template: "{{ value|int }}"
|
||||||
|
device_class: problem
|
||||||
|
entity_category: diagnostic
|
||||||
|
state_topic: "rtl_433/9b13b3f4-rtl433/devices/EcoWitt-WH40/21917/battery_ok"
|
||||||
|
payload_on: "1"
|
||||||
|
payload_off: "0"
|
||||||
|
unique_id: ecowitt-wh40-battery-ok
|
||||||
|
device:
|
||||||
|
identifiers: ecowitt-wh40
|
||||||
|
name: Rain Gauge
|
||||||
|
model: WH40
|
||||||
|
manufacturer: EcoWitt
|
||||||
@@ -0,0 +1,112 @@
|
|||||||
|
mqtt:
|
||||||
|
sensor:
|
||||||
|
- name: "Timestamp"
|
||||||
|
device_class: timestamp
|
||||||
|
icon: mdi:clock-in
|
||||||
|
state_topic: "rtl_433/9b13b3f4-rtl433/devices/TPMS/Schrader-EG53MA4/0D0D33/time"
|
||||||
|
entity_category: diagnostic
|
||||||
|
unique_id: schrader-0d0d33-time
|
||||||
|
device:
|
||||||
|
name: "Tire 1"
|
||||||
|
identifiers: schrader-0d0d33
|
||||||
|
via_device: chevrolet-traverse-lt-awd
|
||||||
|
|
||||||
|
- name: "Pressure"
|
||||||
|
device_class: pressure
|
||||||
|
unit_of_measurement: "kPa"
|
||||||
|
value_template: "{{ value|float }}"
|
||||||
|
state_class: measurement
|
||||||
|
entity_category: diagnostic
|
||||||
|
state_topic: "rtl_433/9b13b3f4-rtl433/devices/TPMS/Schrader-EG53MA4/0D0D33/pressure_kPa"
|
||||||
|
unique_id: schrader-0d0d33-pressure-kpa
|
||||||
|
device:
|
||||||
|
name: "Tire 1"
|
||||||
|
identifiers: schrader-0d0d33
|
||||||
|
via_device: chevrolet-traverse-lt-awd
|
||||||
|
|
||||||
|
- name: "Temperature"
|
||||||
|
device_class: temperature
|
||||||
|
unit_of_measurement: "°C"
|
||||||
|
value_template: "{{ value|float }}"
|
||||||
|
state_class: measurement
|
||||||
|
entity_category: diagnostic
|
||||||
|
state_topic: "rtl_433/9b13b3f4-rtl433/devices/TPMS/Schrader-EG53MA4/0D0D33/temperature_C"
|
||||||
|
unique_id: schrader-0d0d33-temperature-c
|
||||||
|
device:
|
||||||
|
name: "Tire 1"
|
||||||
|
identifiers: schrader-0d0d33
|
||||||
|
via_device: chevrolet-traverse-lt-awd
|
||||||
|
|
||||||
|
- name: "Timestamp"
|
||||||
|
device_class: timestamp
|
||||||
|
icon: mdi:clock-in
|
||||||
|
state_topic: "rtl_433/9b13b3f4-rtl433/devices/TPMS/Schrader-EG53MA4/0D31A0/time"
|
||||||
|
entity_category: diagnostic
|
||||||
|
unique_id: schrader-0d31a0-time
|
||||||
|
device:
|
||||||
|
name: "Tire 2"
|
||||||
|
identifiers: schrader-0d31a0
|
||||||
|
via_device: chevrolet-traverse-lt-awd
|
||||||
|
|
||||||
|
- name: "Pressure"
|
||||||
|
device_class: pressure
|
||||||
|
unit_of_measurement: "kPa"
|
||||||
|
value_template: "{{ value|float }}"
|
||||||
|
state_class: measurement
|
||||||
|
entity_category: diagnostic
|
||||||
|
state_topic: "rtl_433/9b13b3f4-rtl433/devices/TPMS/Schrader-EG53MA4/0D31A0/pressure_kPa"
|
||||||
|
unique_id: schrader-0d31a0-pressure-kpa
|
||||||
|
device:
|
||||||
|
name: "Tire 2"
|
||||||
|
identifiers: schrader-0d31a0
|
||||||
|
via_device: chevrolet-traverse-lt-awd
|
||||||
|
|
||||||
|
- name: "Temperature"
|
||||||
|
device_class: temperature
|
||||||
|
unit_of_measurement: "°C"
|
||||||
|
value_template: "{{ value|float }}"
|
||||||
|
state_class: measurement
|
||||||
|
entity_category: diagnostic
|
||||||
|
state_topic: "rtl_433/9b13b3f4-rtl433/devices/TPMS/Schrader-EG53MA4/0D31A0/temperature_C"
|
||||||
|
unique_id: schrader-0d31a0-temperature-c
|
||||||
|
device:
|
||||||
|
name: "Tire 2"
|
||||||
|
identifiers: schrader-0d31a0
|
||||||
|
via_device: chevrolet-traverse-lt-awd
|
||||||
|
|
||||||
|
- name: "Timestamp"
|
||||||
|
device_class: timestamp
|
||||||
|
icon: mdi:clock-in
|
||||||
|
state_topic: "rtl_433/9b13b3f4-rtl433/devices/TPMS/Schrader-EG53MA4/0D1909/time"
|
||||||
|
entity_category: diagnostic
|
||||||
|
unique_id: schrader-0d1909-time
|
||||||
|
device:
|
||||||
|
name: "Tire 3"
|
||||||
|
identifiers: schrader-0d1909
|
||||||
|
via_device: chevrolet-traverse-lt-awd
|
||||||
|
|
||||||
|
- name: "Pressure"
|
||||||
|
device_class: pressure
|
||||||
|
unit_of_measurement: "kPa"
|
||||||
|
value_template: "{{ value|float }}"
|
||||||
|
state_class: measurement
|
||||||
|
entity_category: diagnostic
|
||||||
|
state_topic: "rtl_433/9b13b3f4-rtl433/devices/TPMS/Schrader-EG53MA4/0D1909/pressure_kPa"
|
||||||
|
unique_id: schrader-0d1909-pressure-kpa
|
||||||
|
device:
|
||||||
|
name: "Tire 3"
|
||||||
|
identifiers: schrader-0d1909
|
||||||
|
via_device: chevrolet-traverse-lt-awd
|
||||||
|
|
||||||
|
- name: "Temperature"
|
||||||
|
device_class: temperature
|
||||||
|
unit_of_measurement: "°C"
|
||||||
|
value_template: "{{ value|float }}"
|
||||||
|
state_class: measurement
|
||||||
|
entity_category: diagnostic
|
||||||
|
state_topic: "rtl_433/9b13b3f4-rtl433/devices/TPMS/Schrader-EG53MA4/0D1909/temperature_C"
|
||||||
|
unique_id: schrader-0d1909-temperature-c
|
||||||
|
device:
|
||||||
|
name: "Tire 3"
|
||||||
|
identifiers: schrader-0d1909
|
||||||
|
via_device: chevrolet-traverse-lt-awd
|
||||||
@@ -188,7 +188,7 @@ template:
|
|||||||
- name: Outdoor Temperature Gradient
|
- name: Outdoor Temperature Gradient
|
||||||
unique_id: templatesensor.outdoor_temperature_gradient
|
unique_id: templatesensor.outdoor_temperature_gradient
|
||||||
state: "{{ (state_attr('binary_sensor.getting_warmer_outside','gradient') | float(default=0) * 10000) | round(2)}}"
|
state: "{{ (state_attr('binary_sensor.getting_warmer_outside','gradient') | float(default=0) * 10000) | round(2)}}"
|
||||||
availability: "{{ (states('binary_sensor.getting_warmer_outside') not in ['unknown', 'unavailable']) }}"
|
availability: "{{ (states('binary_sensor.getting_warmer_outside') not in ['unavailable']) }}"
|
||||||
icon: mdi:sun-thermometer
|
icon: mdi:sun-thermometer
|
||||||
state_class: measurement
|
state_class: measurement
|
||||||
unit_of_measurement: p
|
unit_of_measurement: p
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
binary_sensor.black_bed_occupied:
|
binary_sensor.black_bed_occupied:
|
||||||
icon: mdi:bed
|
icon: mdi:bed
|
||||||
|
|
||||||
input_boolean.white_bed_occupied:
|
binary_sensor.white_bed_occupied:
|
||||||
icon: mdi:bed
|
icon: mdi:bed
|
||||||
|
|
||||||
input_boolean.master_bed_occupied:
|
input_boolean.master_bed_occupied:
|
||||||
|
|||||||
@@ -22,9 +22,13 @@ plant.plant_sensor_3eb0:
|
|||||||
# entity_picture: /local/image/pansy.jpg
|
# entity_picture: /local/image/pansy.jpg
|
||||||
# friendly_name: Pansy
|
# friendly_name: Pansy
|
||||||
|
|
||||||
plant.fineoffset_wh51_0ce593:
|
plant.hasta_soil_sensor:
|
||||||
entity_picture: /local/image/hosta.jpg
|
entity_picture: /local/image/hosta.jpg
|
||||||
friendly_name: Hostas (E593)
|
friendly_name: Hostas
|
||||||
|
|
||||||
|
plant.daisy_soil_sensor:
|
||||||
|
entity_picture: /local/image/daisy.jpg
|
||||||
|
friendly_name: Dasies
|
||||||
|
|
||||||
## Groups
|
## Groups
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
esphome:
|
esphome:
|
||||||
name: bed-presence-2d14a4
|
name: bed-presence-2d14a4
|
||||||
friendly_name: Bed Presence 2d14a4
|
friendly_name: Bed Presence 2d14a4
|
||||||
|
comment: White Bed Sensor
|
||||||
min_version: 2024.6.0
|
min_version: 2024.6.0
|
||||||
name_add_mac_suffix: false
|
name_add_mac_suffix: false
|
||||||
project:
|
project:
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
esphome:
|
esphome:
|
||||||
name: bed-presence-c175a4
|
name: bed-presence-c175a4
|
||||||
friendly_name: Bed Presence c175a4
|
friendly_name: Bed Presence c175a4
|
||||||
|
comment: Master Bed Sensor
|
||||||
min_version: 2024.6.0
|
min_version: 2024.6.0
|
||||||
name_add_mac_suffix: false
|
name_add_mac_suffix: false
|
||||||
project:
|
project:
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
substitutions:
|
substitutions:
|
||||||
devicename: black-bed
|
devicename: black-bed
|
||||||
friendly_name: Black Bed
|
friendly_name: Black Bed
|
||||||
comment: Clever Bed Sensor
|
comment: Black Bed Sensor
|
||||||
entity_name: black_bed
|
entity_name: black_bed
|
||||||
platform: ESP8266
|
platform: ESP8266
|
||||||
board: nodemcuv2
|
board: nodemcuv2
|
||||||
|
|||||||
@@ -0,0 +1,53 @@
|
|||||||
|
# Example configuration entry
|
||||||
|
sensor:
|
||||||
|
- platform: bme680
|
||||||
|
temperature:
|
||||||
|
name: "BME680 Temperature"
|
||||||
|
oversampling: 16x
|
||||||
|
pressure:
|
||||||
|
name: "BME680 Pressure"
|
||||||
|
humidity:
|
||||||
|
id: "humidity"
|
||||||
|
name: "BME680 Humidity"
|
||||||
|
gas_resistance:
|
||||||
|
id: "gas_resistance"
|
||||||
|
name: "BME680 Gas Resistance"
|
||||||
|
address: 0x77
|
||||||
|
update_interval: 60s
|
||||||
|
- platform: template
|
||||||
|
name: "BME680 Indoor Air Quality"
|
||||||
|
id: iaq
|
||||||
|
icon: "mdi:gauge"
|
||||||
|
# calculation: comp_gas = log(R_gas[ohm]) + 0.04 log(Ohm)/%rh * hum[%rh]
|
||||||
|
lambda: |-
|
||||||
|
return log(id(gas_resistance).state) + 0.04 * id(humidity).state;
|
||||||
|
state_class: "measurement"
|
||||||
|
text_sensor:
|
||||||
|
- platform: template
|
||||||
|
name: "BME680 IAQ Classification"
|
||||||
|
icon: "mdi:checkbox-marked-circle-outline"
|
||||||
|
lambda: |-
|
||||||
|
if (int(id(iaq).state) <= 50) {
|
||||||
|
return {"Excellent"};
|
||||||
|
}
|
||||||
|
else if (int(id(iaq).state) <= 100) {
|
||||||
|
return {"Good"};
|
||||||
|
}
|
||||||
|
else if (int(id(iaq).state) <= 150) {
|
||||||
|
return {"Lightly polluted"};
|
||||||
|
}
|
||||||
|
else if (int(id(iaq).state) <= 200) {
|
||||||
|
return {"Moderately polluted"};
|
||||||
|
}
|
||||||
|
else if (int(id(iaq).state) <= 250) {
|
||||||
|
return {"Heavily polluted"};
|
||||||
|
}
|
||||||
|
else if (int(id(iaq).state) <= 350) {
|
||||||
|
return {"Severely polluted"};
|
||||||
|
}
|
||||||
|
else if (int(id(iaq).state) <= 500) {
|
||||||
|
return {"Extremely polluted"};
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
return {"unknown"};
|
||||||
|
}
|
||||||
@@ -0,0 +1,106 @@
|
|||||||
|
bme680_bsec:
|
||||||
|
# id
|
||||||
|
# -----------
|
||||||
|
# Identifier for this component, useful when working with multiple devices.
|
||||||
|
# Must be unique, and can be used in the sensor sections to refer to the correct device.
|
||||||
|
# Default: auto-computed
|
||||||
|
id: bme680_internal
|
||||||
|
|
||||||
|
# i2c address
|
||||||
|
# -----------
|
||||||
|
# Common values are:
|
||||||
|
# - 0x76
|
||||||
|
# - 0x77
|
||||||
|
# Default: 0x76
|
||||||
|
address: 0x76
|
||||||
|
|
||||||
|
# Temperature offset
|
||||||
|
# ------------------
|
||||||
|
# Useful if device is in enclosure and reads too high
|
||||||
|
# For example, if it reads 5C too high, set this to 5
|
||||||
|
# This also corrects the relative humidity readings
|
||||||
|
# Default: 0
|
||||||
|
temperature_offset: 0
|
||||||
|
|
||||||
|
# IAQ calculation mode
|
||||||
|
# --------------------
|
||||||
|
# Available options:
|
||||||
|
# - static (for fixed position devices)
|
||||||
|
# - mobile (for on a person or other moveable devices)
|
||||||
|
# Default: static
|
||||||
|
iaq_mode: static
|
||||||
|
|
||||||
|
# Supply voltage
|
||||||
|
# --------------------
|
||||||
|
# Available options:
|
||||||
|
# - 3.3V
|
||||||
|
# - 1.8V
|
||||||
|
# Default: 3.3V
|
||||||
|
supply_voltage: 3.3V
|
||||||
|
|
||||||
|
# Sample rate
|
||||||
|
# -----------
|
||||||
|
# Available options:
|
||||||
|
# - lp (low power - samples every 3 seconds)
|
||||||
|
# - ulp (ultra-low power - samples every 5 minutes)
|
||||||
|
# Default: lp
|
||||||
|
sample_rate: ulp
|
||||||
|
|
||||||
|
# Interval at which to save BSEC state
|
||||||
|
# ------------------------------------
|
||||||
|
# Default: 6h
|
||||||
|
state_save_interval: 6h
|
||||||
|
|
||||||
|
sensor:
|
||||||
|
- platform: bme680_bsec
|
||||||
|
# ID of the bme680_bsec component to use for the next sensors.
|
||||||
|
# Useful when working with multiple devices
|
||||||
|
bme680_bsec_id: bme680_internal
|
||||||
|
|
||||||
|
temperature:
|
||||||
|
# Temperature in °C
|
||||||
|
name: "BME680 Temperature"
|
||||||
|
sample_rate: lp
|
||||||
|
filters:
|
||||||
|
- median
|
||||||
|
pressure:
|
||||||
|
# Pressure in hPa
|
||||||
|
name: "BME680 Pressure"
|
||||||
|
sample_rate: lp
|
||||||
|
filters:
|
||||||
|
- median
|
||||||
|
humidity:
|
||||||
|
# Relative humidity %
|
||||||
|
name: "BME680 Humidity"
|
||||||
|
sample_rate: lp
|
||||||
|
filters:
|
||||||
|
- median
|
||||||
|
gas_resistance:
|
||||||
|
# Gas resistance in Ω
|
||||||
|
name: "BME680 Gas Resistance"
|
||||||
|
filters:
|
||||||
|
- median
|
||||||
|
iaq:
|
||||||
|
# Indoor air quality value
|
||||||
|
name: "BME680 IAQ"
|
||||||
|
filters:
|
||||||
|
- median
|
||||||
|
iaq_accuracy:
|
||||||
|
# IAQ accuracy as a numeric value of 0, 1, 2, 3
|
||||||
|
name: "BME680 Numeric IAQ Accuracy"
|
||||||
|
co2_equivalent:
|
||||||
|
# CO2 equivalent estimate in ppm
|
||||||
|
name: "BME680 CO2 Equivalent"
|
||||||
|
filters:
|
||||||
|
- median
|
||||||
|
breath_voc_equivalent:
|
||||||
|
# Volatile organic compounds equivalent estimate in ppm
|
||||||
|
name: "BME680 Breath VOC Equivalent"
|
||||||
|
filters:
|
||||||
|
- median
|
||||||
|
|
||||||
|
text_sensor:
|
||||||
|
- platform: bme680_bsec
|
||||||
|
iaq_accuracy:
|
||||||
|
# IAQ accuracy as a text value of Stabilizing, Uncertain, Calibrating, Calibrated
|
||||||
|
name: "BME680 IAQ Accuracy"
|
||||||
@@ -0,0 +1,61 @@
|
|||||||
|
# I2C bus for the BME680 devices
|
||||||
|
i2c:
|
||||||
|
- id: "i2cbus_bme"
|
||||||
|
sda: GPIO18
|
||||||
|
scl: GPIO19
|
||||||
|
scan: true
|
||||||
|
|
||||||
|
# BME680 devices using BSEC library
|
||||||
|
bme680_bsec:
|
||||||
|
- id: bme680_internal
|
||||||
|
i2c_id: "i2cbus_bme"
|
||||||
|
address: 0x76
|
||||||
|
- id: bme680_external
|
||||||
|
i2c_id: "i2cbus_bme"
|
||||||
|
address: 0x77
|
||||||
|
|
||||||
|
sensor:
|
||||||
|
# Sensors for the internal BME680 device
|
||||||
|
- platform: bme680_bsec
|
||||||
|
bme680_bsec_id: bme680_internal
|
||||||
|
temperature:
|
||||||
|
name: "IN_Temp"
|
||||||
|
pressure:
|
||||||
|
name: "IN_Press"
|
||||||
|
humidity:
|
||||||
|
name: "IN_RH"
|
||||||
|
iaq:
|
||||||
|
name: "IN_IAQ"
|
||||||
|
co2_equivalent:
|
||||||
|
name: "IN_CO2eq"
|
||||||
|
breath_voc_equivalent:
|
||||||
|
name: "IN_VOCeq"
|
||||||
|
|
||||||
|
# Sensors for the external BME680 device
|
||||||
|
- platform: bme680_bsec
|
||||||
|
bme680_bsec_id: bme680_external
|
||||||
|
temperature:
|
||||||
|
name: "OUT_Temperatura"
|
||||||
|
pressure:
|
||||||
|
name: "OUT_Pressione"
|
||||||
|
humidity:
|
||||||
|
name: "OUT_RH"
|
||||||
|
iaq:
|
||||||
|
name: "OUT_IAQ"
|
||||||
|
co2_equivalent:
|
||||||
|
name: "OUT_CO2eq"
|
||||||
|
breath_voc_equivalent:
|
||||||
|
name: "OUT_VOCeq"
|
||||||
|
|
||||||
|
text_sensor:
|
||||||
|
# Text sensor for the internal BME680 device
|
||||||
|
- platform: bme680_bsec
|
||||||
|
bme680_bsec_id: bme680_internal
|
||||||
|
iaq_accuracy:
|
||||||
|
name: "IN_IAQaccuracy"
|
||||||
|
|
||||||
|
# Text sensor for the external BME680 device
|
||||||
|
- platform: bme680_bsec
|
||||||
|
bme680_bsec_id: bme680_external
|
||||||
|
iaq_accuracy:
|
||||||
|
name: "OUT_IAQaccuracy"
|
||||||
@@ -8,13 +8,17 @@ substitutions:
|
|||||||
board: wemos_d1_mini32
|
board: wemos_d1_mini32
|
||||||
static_ip: !secret hvac-multisensor-ip
|
static_ip: !secret hvac-multisensor-ip
|
||||||
|
|
||||||
|
# For i2c devices
|
||||||
|
# In this case it's just the display
|
||||||
sda_pin: GPIO21
|
sda_pin: GPIO21
|
||||||
scl_pin: GPIO22
|
scl_pin: GPIO22
|
||||||
|
|
||||||
door_pin: GPIO19
|
door_pin: GPIO19
|
||||||
|
|
||||||
one_wire_pin: GPIO26
|
one_wire_pin: GPIO26
|
||||||
#one_wire_pin: GPIO14
|
|
||||||
|
# For the ultrasonic sensor
|
||||||
trigger_pin: GPIO16
|
trigger_pin: GPIO16
|
||||||
#trigger_pin: GPIO04
|
|
||||||
echo_pin: GPIO13
|
echo_pin: GPIO13
|
||||||
|
|
||||||
#mdc_pin: GPIO23
|
#mdc_pin: GPIO23
|
||||||
@@ -133,7 +137,7 @@ sensor:
|
|||||||
trigger_pin: ${trigger_pin}
|
trigger_pin: ${trigger_pin}
|
||||||
echo_pin: ${echo_pin}
|
echo_pin: ${echo_pin}
|
||||||
id: ultrasonic_source
|
id: ultrasonic_source
|
||||||
#update_interval: 5s
|
update_interval: 1s
|
||||||
internal: True
|
internal: True
|
||||||
filters:
|
filters:
|
||||||
- sliding_window_moving_average:
|
- sliding_window_moving_average:
|
||||||
|
|||||||
+2
-3
@@ -4,14 +4,14 @@ front_yard_plants:
|
|||||||
# does this work?
|
# does this work?
|
||||||
# back to working here?
|
# back to working here?
|
||||||
- plant.plant_sensor_cea4 #Pepper
|
- plant.plant_sensor_cea4 #Pepper
|
||||||
- plant.fineoffset_wh51_0ce593 #Hostas
|
- plant.hasta_soil_sensor #Hostas
|
||||||
|
|
||||||
back_yard_plants:
|
back_yard_plants:
|
||||||
- plant.plant_sensor_3eb0 #Manly Deck Box
|
- plant.plant_sensor_3eb0 #Manly Deck Box
|
||||||
- plant.plant_sensor_3eae #Golden Deck Box
|
- plant.plant_sensor_3eae #Golden Deck Box
|
||||||
|
|
||||||
outdoor_plants:
|
outdoor_plants:
|
||||||
- plant.fineoffset_wh51_0ce593 #Hostas
|
- plant.hasta_soil_sensor #Hostas
|
||||||
|
|
||||||
ceiling_fans:
|
ceiling_fans:
|
||||||
- fan.master_bedroom
|
- fan.master_bedroom
|
||||||
@@ -208,7 +208,6 @@ person_bridget:
|
|||||||
entities:
|
entities:
|
||||||
- device_tracker.bridget_s_fire_wifi
|
- device_tracker.bridget_s_fire_wifi
|
||||||
|
|
||||||
|
|
||||||
traverse:
|
traverse:
|
||||||
name: Traverse
|
name: Traverse
|
||||||
icon: mdi:car-estate
|
icon: mdi:car-estate
|
||||||
|
|||||||
@@ -79,7 +79,7 @@ card:
|
|||||||
left: 40%
|
left: 40%
|
||||||
top: 95%
|
top: 95%
|
||||||
- type: state-icon
|
- type: state-icon
|
||||||
entity: input_boolean.white_bed_occupied
|
entity: binary_sensor.white_bed_occupied
|
||||||
style:
|
style:
|
||||||
left: 60%
|
left: 60%
|
||||||
top: 95%
|
top: 95%
|
||||||
@@ -110,11 +110,11 @@ card:
|
|||||||
|
|
||||||
- type: conditional
|
- type: conditional
|
||||||
conditions:
|
conditions:
|
||||||
- entity: input_boolean.white_bed_occupied
|
- entity: binary_sensor.white_bed_occupied
|
||||||
state: "on"
|
state: "on"
|
||||||
elements:
|
elements:
|
||||||
- type: state-icon
|
- type: state-icon
|
||||||
entity: input_boolean.white_bed_occupied
|
entity: binary_sensor.white_bed_occupied
|
||||||
style:
|
style:
|
||||||
top: 65%
|
top: 65%
|
||||||
left: 80%
|
left: 80%
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ cards:
|
|||||||
- type: entities
|
- type: entities
|
||||||
title: Ecowitt Batteries
|
title: Ecowitt Batteries
|
||||||
entities:
|
entities:
|
||||||
- entity: sensor.fineoffset_wh51_0ce593_battery
|
- entity: sensor.hasta_soil_sensor_battery
|
||||||
name: Hostas - e593
|
name: Hostas - e593
|
||||||
- type: entities
|
- type: entities
|
||||||
title: BLE Batteries
|
title: BLE Batteries
|
||||||
|
|||||||
@@ -1811,9 +1811,9 @@ sections:
|
|||||||
- value: below_horizon
|
- value: below_horizon
|
||||||
label: Night
|
label: Night
|
||||||
entities:
|
entities:
|
||||||
- entity: sensor.lacrosse_tx141thbv2_0_temperature
|
- entity: sensor.front_yard_thermostat_temperature
|
||||||
name: Front Yard
|
name: Front Yard
|
||||||
- entity: sensor.acurite_592txr_a_temperature
|
- entity: sensor.back_yard_thermostat_temperature
|
||||||
name: Back Yard
|
name: Back Yard
|
||||||
- color: white
|
- color: white
|
||||||
entity: sensor.outdoor_temperature
|
entity: sensor.outdoor_temperature
|
||||||
|
|||||||
@@ -7,9 +7,9 @@ badges: []
|
|||||||
cards:
|
cards:
|
||||||
- type: vertical-stack
|
- type: vertical-stack
|
||||||
cards:
|
cards:
|
||||||
- type: custom:mushroom-chips-card
|
# - type: custom:mushroom-chips-card
|
||||||
chips:
|
# chips:
|
||||||
- type: back
|
# - type: back
|
||||||
- type: horizontal-stack
|
- type: horizontal-stack
|
||||||
cards:
|
cards:
|
||||||
- hours_to_show: 24
|
- hours_to_show: 24
|
||||||
|
|||||||
@@ -7,9 +7,9 @@ badges: []
|
|||||||
cards:
|
cards:
|
||||||
- type: vertical-stack
|
- type: vertical-stack
|
||||||
cards:
|
cards:
|
||||||
- type: custom:mushroom-chips-card
|
# - type: custom:mushroom-chips-card
|
||||||
chips:
|
# chips:
|
||||||
- type: back
|
# - type: back
|
||||||
- type: horizontal-stack
|
- type: horizontal-stack
|
||||||
cards:
|
cards:
|
||||||
- hours_to_show: 24
|
- hours_to_show: 24
|
||||||
|
|||||||
@@ -5,9 +5,9 @@ path: computer-area
|
|||||||
icon: mdi:desktop-classic
|
icon: mdi:desktop-classic
|
||||||
badges: []
|
badges: []
|
||||||
cards:
|
cards:
|
||||||
- type: custom:mushroom-chips-card
|
# - type: custom:mushroom-chips-card
|
||||||
chips:
|
# chips:
|
||||||
- type: back
|
# - type: back
|
||||||
- type: horizontal-stack
|
- type: horizontal-stack
|
||||||
cards:
|
cards:
|
||||||
- hours_to_show: 24
|
- hours_to_show: 24
|
||||||
|
|||||||
@@ -7,9 +7,9 @@ badges: []
|
|||||||
cards:
|
cards:
|
||||||
- type: vertical-stack
|
- type: vertical-stack
|
||||||
cards:
|
cards:
|
||||||
- type: custom:mushroom-chips-card
|
# - type: custom:mushroom-chips-card
|
||||||
chips:
|
# chips:
|
||||||
- type: back
|
# - type: back
|
||||||
- type: horizontal-stack
|
- type: horizontal-stack
|
||||||
cards:
|
cards:
|
||||||
- hours_to_show: 24
|
- hours_to_show: 24
|
||||||
|
|||||||
@@ -7,9 +7,9 @@ badges: []
|
|||||||
cards:
|
cards:
|
||||||
- type: vertical-stack
|
- type: vertical-stack
|
||||||
cards:
|
cards:
|
||||||
- type: custom:mushroom-chips-card
|
# - type: custom:mushroom-chips-card
|
||||||
chips:
|
# chips:
|
||||||
- type: back
|
# - type: back
|
||||||
- type: horizontal-stack
|
- type: horizontal-stack
|
||||||
cards:
|
cards:
|
||||||
- hours_to_show: 24
|
- hours_to_show: 24
|
||||||
|
|||||||
@@ -8,9 +8,9 @@ badges: []
|
|||||||
sections:
|
sections:
|
||||||
- type: grid
|
- type: grid
|
||||||
cards:
|
cards:
|
||||||
- type: custom:mushroom-chips-card
|
# - type: custom:mushroom-chips-card
|
||||||
chips:
|
# chips:
|
||||||
- type: back
|
# - type: back
|
||||||
- type: horizontal-stack
|
- type: horizontal-stack
|
||||||
cards:
|
cards:
|
||||||
- hours_to_show: 24
|
- hours_to_show: 24
|
||||||
|
|||||||
@@ -7,42 +7,42 @@ badges: []
|
|||||||
cards:
|
cards:
|
||||||
- type: vertical-stack
|
- type: vertical-stack
|
||||||
cards:
|
cards:
|
||||||
- type: custom:mushroom-chips-card
|
# - type: custom:mushroom-chips-card
|
||||||
chips:
|
# chips:
|
||||||
- type: back
|
# - type: back
|
||||||
- type: horizontal-stack
|
- type: horizontal-stack
|
||||||
cards:
|
cards:
|
||||||
- type: custom:mushroom-template-card
|
- type: custom:mushroom-template-card
|
||||||
primary: "{{states('sensor.lacrosse_tx141thbv2_0_temperature')}}°F"
|
primary: "{{states('sensor.front_yard_thermostat_temperature')}}°F"
|
||||||
secondary: ""
|
secondary: ""
|
||||||
icon: mdi:thermometer
|
icon: mdi:thermometer
|
||||||
entity: sensor.lacrosse_tx141thbv2_0_temperature
|
entity: sensor.front_yard_thermostat_temperature
|
||||||
icon_color: >-
|
icon_color: >-
|
||||||
{% if states('sensor.lacrosse_tx141thbv2_0_temperature')|float(default=0) < 30.0 %}
|
{% if states('sensor.front_yard_thermostat_temperature')|float(default=0) < 30.0 %}
|
||||||
white
|
white
|
||||||
{%elif states('sensor.lacrosse_tx141thbv2_0_temperature')|float(default=0) < 60.0 %}
|
{%elif states('sensor.front_yard_thermostat_temperature')|float(default=0) < 60.0 %}
|
||||||
blue
|
blue
|
||||||
{%elif states('sensor.lacrosse_tx141thbv2_0_temperature')|float(default=0) < 85.0 %}
|
{%elif states('sensor.front_yard_thermostat_temperature')|float(default=0) < 85.0 %}
|
||||||
green
|
green
|
||||||
{%elif states('sensor.lacrosse_tx141thbv2_0_temperature')|float(default=0) < 100.0 %}
|
{%elif states('sensor.front_yard_thermostat_temperature')|float(default=0) < 100.0 %}
|
||||||
orange
|
orange
|
||||||
{%else%}
|
{%else%}
|
||||||
red
|
red
|
||||||
{%endif%}
|
{%endif%}
|
||||||
layout: vertical
|
layout: vertical
|
||||||
- type: custom:mushroom-template-card
|
- type: custom:mushroom-template-card
|
||||||
primary: "{{states('sensor.lacrosse_tx141thbv2_0_humidity')}}%"
|
primary: "{{states('sensor.front_yard_thermostat_humidity')}}%"
|
||||||
secondary: ""
|
secondary: ""
|
||||||
icon: mdi:water-percent
|
icon: mdi:water-percent
|
||||||
entity: sensor.lacrosse_tx141thbv2_0_humidity
|
entity: sensor.front_yard_thermostat_humidity
|
||||||
icon_color: >-
|
icon_color: >-
|
||||||
{% if states('sensor.lacrosse_tx141thbv2_0_humidity')|float(default=0) < 20.0 %}
|
{% if states('sensor.front_yard_thermostat_humidity')|float(default=0) < 20.0 %}
|
||||||
white
|
white
|
||||||
{%elif states('sensor.lacrosse_tx141thbv2_0_humidity')|float(default=0) < 40.0 %}
|
{%elif states('sensor.front_yard_thermostat_humidity')|float(default=0) < 40.0 %}
|
||||||
grey
|
grey
|
||||||
{%elif states('sensor.lacrosse_tx141thbv2_0_humidity')|float(default=0) < 60.0 %}
|
{%elif states('sensor.front_yard_thermostat_humidity')|float(default=0) < 60.0 %}
|
||||||
green
|
green
|
||||||
{%elif states('sensor.lacrosse_tx141thbv2_0_humidity')|float(default=0) < 80.0 %}
|
{%elif states('sensor.front_yard_thermostat_humidity')|float(default=0) < 80.0 %}
|
||||||
cyan
|
cyan
|
||||||
{%else%}
|
{%else%}
|
||||||
blue
|
blue
|
||||||
|
|||||||
@@ -7,9 +7,9 @@ badges: []
|
|||||||
cards:
|
cards:
|
||||||
- type: vertical-stack
|
- type: vertical-stack
|
||||||
cards:
|
cards:
|
||||||
- type: custom:mushroom-chips-card
|
# - type: custom:mushroom-chips-card
|
||||||
chips:
|
# chips:
|
||||||
- type: back
|
# - type: back
|
||||||
- type: horizontal-stack
|
- type: horizontal-stack
|
||||||
cards:
|
cards:
|
||||||
- hours_to_show: 24
|
- hours_to_show: 24
|
||||||
|
|||||||
@@ -7,9 +7,9 @@ badges: []
|
|||||||
cards:
|
cards:
|
||||||
- type: vertical-stack
|
- type: vertical-stack
|
||||||
cards:
|
cards:
|
||||||
- type: custom:mushroom-chips-card
|
# - type: custom:mushroom-chips-card
|
||||||
chips:
|
# chips:
|
||||||
- type: back
|
# - type: back
|
||||||
- type: horizontal-stack
|
- type: horizontal-stack
|
||||||
cards:
|
cards:
|
||||||
- hours_to_show: 24
|
- hours_to_show: 24
|
||||||
|
|||||||
@@ -8,9 +8,9 @@ type: sections
|
|||||||
sections:
|
sections:
|
||||||
- type: grid
|
- type: grid
|
||||||
cards:
|
cards:
|
||||||
- type: custom:mushroom-chips-card
|
# - type: custom:mushroom-chips-card
|
||||||
chips:
|
# chips:
|
||||||
- type: back
|
# - type: back
|
||||||
- type: horizontal-stack
|
- type: horizontal-stack
|
||||||
cards:
|
cards:
|
||||||
- hours_to_show: 24
|
- hours_to_show: 24
|
||||||
|
|||||||
+58
-29
@@ -17,9 +17,9 @@ cards:
|
|||||||
- type: conditional
|
- type: conditional
|
||||||
conditions:
|
conditions:
|
||||||
- entity: switch.opensprinkler_enabled
|
- entity: switch.opensprinkler_enabled
|
||||||
state: 'on'
|
state: "on"
|
||||||
- entity: input_boolean.sprinkler_is_winterized
|
- entity: input_boolean.sprinkler_is_winterized
|
||||||
state: 'off'
|
state: "off"
|
||||||
chip:
|
chip:
|
||||||
type: entity
|
type: entity
|
||||||
entity: sensor.sprinkler_current_status
|
entity: sensor.sprinkler_current_status
|
||||||
@@ -72,7 +72,7 @@ cards:
|
|||||||
- type: conditional
|
- type: conditional
|
||||||
conditions:
|
conditions:
|
||||||
- entity: input_boolean.clint_needs_am_meds
|
- entity: input_boolean.clint_needs_am_meds
|
||||||
state: 'on'
|
state: "on"
|
||||||
chip:
|
chip:
|
||||||
type: entity
|
type: entity
|
||||||
entity: input_boolean.clint_needs_am_meds
|
entity: input_boolean.clint_needs_am_meds
|
||||||
@@ -84,7 +84,7 @@ cards:
|
|||||||
- type: conditional
|
- type: conditional
|
||||||
conditions:
|
conditions:
|
||||||
- entity: input_boolean.clint_needs_pm_meds
|
- entity: input_boolean.clint_needs_pm_meds
|
||||||
state: 'on'
|
state: "on"
|
||||||
chip:
|
chip:
|
||||||
type: entity
|
type: entity
|
||||||
entity: input_boolean.clint_needs_pm_meds
|
entity: input_boolean.clint_needs_pm_meds
|
||||||
@@ -96,7 +96,7 @@ cards:
|
|||||||
- type: conditional
|
- type: conditional
|
||||||
conditions:
|
conditions:
|
||||||
- entity: sensor.dishwasher
|
- entity: sensor.dishwasher
|
||||||
state_not: 'idle'
|
state_not: "idle"
|
||||||
chip:
|
chip:
|
||||||
type: template
|
type: template
|
||||||
entity: input_boolean.empty_dishwasher
|
entity: input_boolean.empty_dishwasher
|
||||||
@@ -121,7 +121,7 @@ cards:
|
|||||||
- type: conditional
|
- type: conditional
|
||||||
conditions:
|
conditions:
|
||||||
- entity: sensor.washing_machine
|
- entity: sensor.washing_machine
|
||||||
state_not: 'idle'
|
state_not: "idle"
|
||||||
chip:
|
chip:
|
||||||
type: template
|
type: template
|
||||||
entity: input_boolean.swap_laundry
|
entity: input_boolean.swap_laundry
|
||||||
@@ -146,7 +146,7 @@ cards:
|
|||||||
- type: conditional
|
- type: conditional
|
||||||
conditions:
|
conditions:
|
||||||
- entity: sensor.tumble_dryer
|
- entity: sensor.tumble_dryer
|
||||||
state_not: 'idle'
|
state_not: "idle"
|
||||||
chip:
|
chip:
|
||||||
type: template
|
type: template
|
||||||
entity: input_boolean.fold_clothes
|
entity: input_boolean.fold_clothes
|
||||||
@@ -171,7 +171,7 @@ cards:
|
|||||||
- type: conditional
|
- type: conditional
|
||||||
conditions:
|
conditions:
|
||||||
- entity: alert.garage_door
|
- entity: alert.garage_door
|
||||||
state: 'on'
|
state: "on"
|
||||||
chip:
|
chip:
|
||||||
type: entity
|
type: entity
|
||||||
entity: alert.garage_door
|
entity: alert.garage_door
|
||||||
@@ -293,8 +293,7 @@ cards:
|
|||||||
- type: vertical-stack
|
- type: vertical-stack
|
||||||
cards:
|
cards:
|
||||||
- type: custom:mushroom-title-card
|
- type: custom:mushroom-title-card
|
||||||
title: Rooms
|
title: Upstairs
|
||||||
subtitle: Upstairs
|
|
||||||
- type: horizontal-stack
|
- type: horizontal-stack
|
||||||
cards:
|
cards:
|
||||||
- type: custom:mushroom-template-card
|
- type: custom:mushroom-template-card
|
||||||
@@ -309,7 +308,7 @@ cards:
|
|||||||
secondary: |-
|
secondary: |-
|
||||||
{{states('sensor.nursery_multisensor_air_temperature')}}°F
|
{{states('sensor.nursery_multisensor_air_temperature')}}°F
|
||||||
{{states('sensor.nursery_multisensor_humidity')}}%
|
{{states('sensor.nursery_multisensor_humidity')}}%
|
||||||
icon_color: '{{iif(is_state(''light.nursery_hue'',''on''),''yellow'')}}'
|
icon_color: "{{iif(is_state('light.nursery_hue','on'),'yellow')}}"
|
||||||
multiline_secondary: true
|
multiline_secondary: true
|
||||||
layout: vertical
|
layout: vertical
|
||||||
- type: custom:mushroom-template-card
|
- type: custom:mushroom-template-card
|
||||||
@@ -325,7 +324,7 @@ cards:
|
|||||||
{{states('sensor.master_bedroom_multisensor_air_temperature')}}°F
|
{{states('sensor.master_bedroom_multisensor_air_temperature')}}°F
|
||||||
|
|
||||||
{{states('sensor.master_bedroom_multisensor_humidity')}}%
|
{{states('sensor.master_bedroom_multisensor_humidity')}}%
|
||||||
icon_color: '{{iif(is_state(''light.master_bedroom_hue'',''on''),''yellow'')}}'
|
icon_color: "{{iif(is_state('light.master_bedroom_hue','on'),'yellow')}}"
|
||||||
multiline_secondary: true
|
multiline_secondary: true
|
||||||
layout: vertical
|
layout: vertical
|
||||||
- type: custom:mushroom-template-card
|
- type: custom:mushroom-template-card
|
||||||
@@ -340,7 +339,7 @@ cards:
|
|||||||
secondary: |-
|
secondary: |-
|
||||||
{{states('sensor.master_bathroom_thermostat_temperature')}}°F
|
{{states('sensor.master_bathroom_thermostat_temperature')}}°F
|
||||||
{{states('sensor.master_bathroom_thermostat_humidity')}}%
|
{{states('sensor.master_bathroom_thermostat_humidity')}}%
|
||||||
icon_color: '{{iif(is_state(''light.master_bathroom_hue'',''on''),''yellow'')}}'
|
icon_color: "{{iif(is_state('light.master_bathroom_hue','on'),'yellow')}}"
|
||||||
multiline_secondary: true
|
multiline_secondary: true
|
||||||
layout: vertical
|
layout: vertical
|
||||||
- type: horizontal-stack
|
- type: horizontal-stack
|
||||||
@@ -357,7 +356,7 @@ cards:
|
|||||||
secondary: |-
|
secondary: |-
|
||||||
{{states('sensor.front_room_thermostat_temperature')}}°F
|
{{states('sensor.front_room_thermostat_temperature')}}°F
|
||||||
{{states('sensor.front_room_thermostat_humidity')}}%
|
{{states('sensor.front_room_thermostat_humidity')}}%
|
||||||
icon_color: '{{iif(is_state(''light.front_room_hue'',''on''),''yellow'')}}'
|
icon_color: "{{iif(is_state('light.front_room_hue','on'),'yellow')}}"
|
||||||
multiline_secondary: true
|
multiline_secondary: true
|
||||||
layout: vertical
|
layout: vertical
|
||||||
- type: custom:mushroom-template-card
|
- type: custom:mushroom-template-card
|
||||||
@@ -372,7 +371,7 @@ cards:
|
|||||||
secondary: |-
|
secondary: |-
|
||||||
{{states('sensor.kitchen_multisensor_air_temperature')}}°F
|
{{states('sensor.kitchen_multisensor_air_temperature')}}°F
|
||||||
{{states('sensor.kitchen_multisensor_humidity')}}%
|
{{states('sensor.kitchen_multisensor_humidity')}}%
|
||||||
icon_color: '{{iif(is_state(''light.kitchen_hue'',''on''),''yellow'')}}'
|
icon_color: "{{iif(is_state('light.kitchen_hue','on'),'yellow')}}"
|
||||||
multiline_secondary: true
|
multiline_secondary: true
|
||||||
layout: vertical
|
layout: vertical
|
||||||
- type: custom:mushroom-template-card
|
- type: custom:mushroom-template-card
|
||||||
@@ -387,13 +386,13 @@ cards:
|
|||||||
secondary: |-
|
secondary: |-
|
||||||
{{states('sensor.dining_room_multisensor_air_temperature')}}°F
|
{{states('sensor.dining_room_multisensor_air_temperature')}}°F
|
||||||
{{states('sensor.dining_room_multisensor_humidity')}}%
|
{{states('sensor.dining_room_multisensor_humidity')}}%
|
||||||
icon_color: '{{iif(is_state(''light.dining_room_switch'',''on''),''yellow'')}}'
|
icon_color: "{{iif(is_state('light.dining_room_switch','on'),'yellow')}}"
|
||||||
multiline_secondary: true
|
multiline_secondary: true
|
||||||
layout: vertical
|
layout: vertical
|
||||||
- type: vertical-stack
|
- type: vertical-stack
|
||||||
cards:
|
cards:
|
||||||
- type: custom:mushroom-title-card
|
- type: custom:mushroom-title-card
|
||||||
subtitle: Ground Level
|
title: Ground Level
|
||||||
- type: horizontal-stack
|
- type: horizontal-stack
|
||||||
cards:
|
cards:
|
||||||
- type: custom:mushroom-template-card
|
- type: custom:mushroom-template-card
|
||||||
@@ -408,7 +407,22 @@ cards:
|
|||||||
secondary: |-
|
secondary: |-
|
||||||
{{states('sensor.entryway_temperature')}}°F
|
{{states('sensor.entryway_temperature')}}°F
|
||||||
{{states('sensor.thermostat_humidity')}}%
|
{{states('sensor.thermostat_humidity')}}%
|
||||||
icon_color: '{{iif(is_state(''light.entryway_hue'',''on''),''yellow'')}}'
|
icon_color: "{{iif(is_state('light.entryway_hue','on'),'yellow')}}"
|
||||||
|
multiline_secondary: true
|
||||||
|
layout: vertical
|
||||||
|
- type: custom:mushroom-template-card
|
||||||
|
primary: Front Porch
|
||||||
|
icon: mdi:door
|
||||||
|
entity: light.front_porch_overhead
|
||||||
|
tap_action:
|
||||||
|
action: navigate
|
||||||
|
navigation_path: garage
|
||||||
|
hold_action:
|
||||||
|
action: toggle
|
||||||
|
secondary: |-
|
||||||
|
{{states('sensor.front_yard_thermostat_temperature')}}°F
|
||||||
|
{{states('sensor.front_yard_thermostat_humidity')}}%
|
||||||
|
icon_color: "{{iif(is_state('light.front_porch_overhead','on'),'yellow')}}"
|
||||||
multiline_secondary: true
|
multiline_secondary: true
|
||||||
layout: vertical
|
layout: vertical
|
||||||
- type: custom:mushroom-template-card
|
- type: custom:mushroom-template-card
|
||||||
@@ -423,7 +437,7 @@ cards:
|
|||||||
secondary: |-
|
secondary: |-
|
||||||
{{states('sensor.garage_multisensor_air_temperature')}}°F
|
{{states('sensor.garage_multisensor_air_temperature')}}°F
|
||||||
{{states('sensor.garage_multisensor_humidity')}}%
|
{{states('sensor.garage_multisensor_humidity')}}%
|
||||||
icon_color: '{{iif(is_state(''light.garage_overhead'',''on''),''yellow'')}}'
|
icon_color: "{{iif(is_state('light.garage_overhead','on'),'yellow')}}"
|
||||||
multiline_secondary: true
|
multiline_secondary: true
|
||||||
layout: vertical
|
layout: vertical
|
||||||
- type: horizontal-stack
|
- type: horizontal-stack
|
||||||
@@ -440,7 +454,7 @@ cards:
|
|||||||
secondary: |-
|
secondary: |-
|
||||||
{{states('sensor.front_porch_temperature')}}°F
|
{{states('sensor.front_porch_temperature')}}°F
|
||||||
{{states('sensor.garage_multisensor_humidity')}}%
|
{{states('sensor.garage_multisensor_humidity')}}%
|
||||||
icon_color: '{{iif(is_state(''light.front_porch_overhead'',''on''),''yellow'')}}'
|
icon_color: "{{iif(is_state('light.front_porch_overhead','on'),'yellow')}}"
|
||||||
multiline_secondary: true
|
multiline_secondary: true
|
||||||
layout: vertical
|
layout: vertical
|
||||||
- type: custom:mushroom-template-card
|
- type: custom:mushroom-template-card
|
||||||
@@ -453,9 +467,24 @@ cards:
|
|||||||
hold_action:
|
hold_action:
|
||||||
action: toggle
|
action: toggle
|
||||||
secondary: |-
|
secondary: |-
|
||||||
{{states('sensor.deck_temperature')}}°F
|
{{states('sensor.back_yard_thermostat_temperature')}}°F
|
||||||
{{states('sensor.garage_multisensor_humidity')}}%
|
{{states('sensor.back_yard_thermostat_humidity')}}%
|
||||||
icon_color: '{{iif(is_state(''light.deck'',''on''),''yellow'')}}'
|
icon_color: "{{iif(is_state('light.deck','on'),'yellow')}}"
|
||||||
|
multiline_secondary: true
|
||||||
|
layout: vertical
|
||||||
|
- type: custom:mushroom-template-card
|
||||||
|
primary: Deck
|
||||||
|
icon: mdi:grill
|
||||||
|
entity: light.deck
|
||||||
|
tap_action:
|
||||||
|
action: navigate
|
||||||
|
navigation_path: back-yard
|
||||||
|
hold_action:
|
||||||
|
action: toggle
|
||||||
|
secondary: |-
|
||||||
|
{{states('sensor.back_yard_thermostat_temperature')}}°F
|
||||||
|
{{states('sensor.back_yard_thermostat_humidity')}}%
|
||||||
|
icon_color: "{{iif(is_state('light.deck','on'),'yellow')}}"
|
||||||
multiline_secondary: true
|
multiline_secondary: true
|
||||||
layout: vertical
|
layout: vertical
|
||||||
- type: vertical-stack
|
- type: vertical-stack
|
||||||
@@ -477,7 +506,7 @@ cards:
|
|||||||
{{states('sensor.computer_area_multisensor_air_temperature')}}°F
|
{{states('sensor.computer_area_multisensor_air_temperature')}}°F
|
||||||
|
|
||||||
{{states('sensor.computer_area_multisensor_humidity')}}%
|
{{states('sensor.computer_area_multisensor_humidity')}}%
|
||||||
icon_color: '{{iif(is_state(''light.computer_area_hue'',''on''),''yellow'')}}'
|
icon_color: "{{iif(is_state('light.computer_area_hue','on'),'yellow')}}"
|
||||||
multiline_secondary: true
|
multiline_secondary: true
|
||||||
layout: vertical
|
layout: vertical
|
||||||
- type: custom:mushroom-template-card
|
- type: custom:mushroom-template-card
|
||||||
@@ -492,7 +521,7 @@ cards:
|
|||||||
secondary: |-
|
secondary: |-
|
||||||
{{states('sensor.great_room_multisensor_air_temperature')}}°F
|
{{states('sensor.great_room_multisensor_air_temperature')}}°F
|
||||||
{{states('sensor.great_room_multisensor_humidity')}}%
|
{{states('sensor.great_room_multisensor_humidity')}}%
|
||||||
icon_color: '{{iif(is_state(''light.great_room_hue'',''on''),''yellow'')}}'
|
icon_color: "{{iif(is_state('light.great_room_hue','on'),'yellow')}}"
|
||||||
multiline_secondary: true
|
multiline_secondary: true
|
||||||
layout: vertical
|
layout: vertical
|
||||||
- type: custom:mushroom-template-card
|
- type: custom:mushroom-template-card
|
||||||
@@ -507,7 +536,7 @@ cards:
|
|||||||
secondary: |-
|
secondary: |-
|
||||||
{{states('sensor.utility_room_thermostat_temperature')}}°F
|
{{states('sensor.utility_room_thermostat_temperature')}}°F
|
||||||
{{states('sensor.utility_room_thermostat_humidity')}}%
|
{{states('sensor.utility_room_thermostat_humidity')}}%
|
||||||
icon_color: '{{iif(is_state(''light.utility_room_vanity'',''on''),''yellow'')}}'
|
icon_color: "{{iif(is_state('light.utility_room_vanity','on'),'yellow')}}"
|
||||||
multiline_secondary: true
|
multiline_secondary: true
|
||||||
layout: vertical
|
layout: vertical
|
||||||
- type: horizontal-stack
|
- type: horizontal-stack
|
||||||
@@ -524,7 +553,7 @@ cards:
|
|||||||
secondary: |-
|
secondary: |-
|
||||||
{{states('sensor.blue_room_multisensor_air_temperature')}}°F
|
{{states('sensor.blue_room_multisensor_air_temperature')}}°F
|
||||||
{{states('sensor.blue_room_multisensor_humidity')}}%
|
{{states('sensor.blue_room_multisensor_humidity')}}%
|
||||||
icon_color: '{{iif(is_state(''light.blue_room_hue'',''on''),''yellow'')}}'
|
icon_color: "{{iif(is_state('light.blue_room_hue','on'),'yellow')}}"
|
||||||
multiline_secondary: true
|
multiline_secondary: true
|
||||||
layout: vertical
|
layout: vertical
|
||||||
- type: custom:mushroom-template-card
|
- type: custom:mushroom-template-card
|
||||||
@@ -539,7 +568,7 @@ cards:
|
|||||||
secondary: |-
|
secondary: |-
|
||||||
{{states('sensor.mancave_thermostat_temperature')}}°F
|
{{states('sensor.mancave_thermostat_temperature')}}°F
|
||||||
{{states('sensor.mancave_thermostat_humidity')}}%
|
{{states('sensor.mancave_thermostat_humidity')}}%
|
||||||
icon_color: '{{iif(is_state(''light.mancave'',''on''),''yellow'')}}'
|
icon_color: "{{iif(is_state('light.mancave','on'),'yellow')}}"
|
||||||
multiline_secondary: true
|
multiline_secondary: true
|
||||||
layout: vertical
|
layout: vertical
|
||||||
- type: custom:mushroom-template-card
|
- type: custom:mushroom-template-card
|
||||||
@@ -554,6 +583,6 @@ cards:
|
|||||||
secondary: |-
|
secondary: |-
|
||||||
{{states('sensor.furnace_room_thermostat_temperature')}}°F
|
{{states('sensor.furnace_room_thermostat_temperature')}}°F
|
||||||
{{states('sensor.furnace_room_thermostat_humidity')}}%
|
{{states('sensor.furnace_room_thermostat_humidity')}}%
|
||||||
icon_color: '{{iif(is_state(''light.furnace_room'',''on''),''yellow'')}}'
|
icon_color: "{{iif(is_state('light.furnace_room','on'),'yellow')}}"
|
||||||
multiline_secondary: true
|
multiline_secondary: true
|
||||||
layout: vertical
|
layout: vertical
|
||||||
@@ -7,9 +7,9 @@ badges: []
|
|||||||
cards:
|
cards:
|
||||||
- type: vertical-stack
|
- type: vertical-stack
|
||||||
cards:
|
cards:
|
||||||
- type: custom:mushroom-chips-card
|
# - type: custom:mushroom-chips-card
|
||||||
chips:
|
# chips:
|
||||||
- type: back
|
# - type: back
|
||||||
- type: horizontal-stack
|
- type: horizontal-stack
|
||||||
cards:
|
cards:
|
||||||
- hours_to_show: 24
|
- hours_to_show: 24
|
||||||
@@ -120,11 +120,11 @@ cards:
|
|||||||
- type: horizontal-stack
|
- type: horizontal-stack
|
||||||
cards:
|
cards:
|
||||||
- type: custom:mushroom-entity-card
|
- type: custom:mushroom-entity-card
|
||||||
entity: sensor.acurite_986_2f_42383_temperature
|
entity: sensor.kitchen_freezer_thermostat_temperature
|
||||||
name: Freezer
|
name: Freezer
|
||||||
layout: vertical
|
layout: vertical
|
||||||
- type: custom:mushroom-entity-card
|
- type: custom:mushroom-entity-card
|
||||||
entity: sensor.acurite_986_1r_48226_temperature
|
entity: sensor.kitchen_fridge_thermostat_temperature
|
||||||
name: Fridge
|
name: Fridge
|
||||||
layout: vertical
|
layout: vertical
|
||||||
- type: vertical-stack
|
- type: vertical-stack
|
||||||
|
|||||||
@@ -7,9 +7,9 @@ badges: []
|
|||||||
cards:
|
cards:
|
||||||
- type: vertical-stack
|
- type: vertical-stack
|
||||||
cards:
|
cards:
|
||||||
- type: custom:mushroom-chips-card
|
# - type: custom:mushroom-chips-card
|
||||||
chips:
|
# chips:
|
||||||
- type: back
|
# - type: back
|
||||||
- type: horizontal-stack
|
- type: horizontal-stack
|
||||||
cards:
|
cards:
|
||||||
- hours_to_show: 24
|
- hours_to_show: 24
|
||||||
|
|||||||
@@ -7,9 +7,9 @@ badges: []
|
|||||||
cards:
|
cards:
|
||||||
- type: vertical-stack
|
- type: vertical-stack
|
||||||
cards:
|
cards:
|
||||||
- type: custom:mushroom-chips-card
|
# - type: custom:mushroom-chips-card
|
||||||
chips:
|
# chips:
|
||||||
- type: back
|
# - type: back
|
||||||
- type: horizontal-stack
|
- type: horizontal-stack
|
||||||
cards:
|
cards:
|
||||||
- hours_to_show: 24
|
- hours_to_show: 24
|
||||||
|
|||||||
@@ -7,9 +7,9 @@ badges: []
|
|||||||
cards:
|
cards:
|
||||||
- type: vertical-stack
|
- type: vertical-stack
|
||||||
cards:
|
cards:
|
||||||
- type: custom:mushroom-chips-card
|
# - type: custom:mushroom-chips-card
|
||||||
chips:
|
# chips:
|
||||||
- type: back
|
# - type: back
|
||||||
- type: horizontal-stack
|
- type: horizontal-stack
|
||||||
cards:
|
cards:
|
||||||
- hours_to_show: 24
|
- hours_to_show: 24
|
||||||
|
|||||||
+12
-26
@@ -8,9 +8,9 @@ cards:
|
|||||||
# Header and HVAC
|
# Header and HVAC
|
||||||
- type: vertical-stack
|
- type: vertical-stack
|
||||||
cards:
|
cards:
|
||||||
- type: custom:mushroom-chips-card
|
# - type: custom:mushroom-chips-card
|
||||||
chips:
|
# chips:
|
||||||
- type: back
|
# - type: back
|
||||||
- type: horizontal-stack
|
- type: horizontal-stack
|
||||||
cards:
|
cards:
|
||||||
- hours_to_show: 24
|
- hours_to_show: 24
|
||||||
@@ -331,29 +331,15 @@ cards:
|
|||||||
target:
|
target:
|
||||||
entity_id: button.black_bed_manual_tare
|
entity_id: button.black_bed_manual_tare
|
||||||
layout: vertical
|
layout: vertical
|
||||||
# - type: custom:mushroom-template-card
|
- type: custom:mushroom-template-card
|
||||||
# entity: input_boolean.white_bed_occupied
|
entity: binary_sensor.white_bed_occupied
|
||||||
# icon: mdi:bed
|
icon: mdi:bed
|
||||||
# icon_color: >-
|
icon_color: >-
|
||||||
# {% if(is_state('input_boolean.white_bed_occupied','on')) %}
|
{% if(is_state('binary_sensor.white_bed_occupied','on')) %}
|
||||||
# yellow
|
yellow
|
||||||
# {% elif(is_state('binary_sensor.white_bed_hx711_error','on')) %}
|
{% endif %}
|
||||||
# red
|
primary: White Bed
|
||||||
# {% endif %}
|
layout: vertical
|
||||||
# primary: White Bed
|
|
||||||
# double_tap_action:
|
|
||||||
# action: call-service
|
|
||||||
# service: homeassistant.toggle
|
|
||||||
# service_data: {}
|
|
||||||
# target:
|
|
||||||
# entity_id: switch.white_bed_force_occupancy
|
|
||||||
# hold_action:
|
|
||||||
# action: call-service
|
|
||||||
# service: button.press
|
|
||||||
# service_data: {}
|
|
||||||
# target:
|
|
||||||
# entity_id: button.white_bed_manual_tare
|
|
||||||
# layout: vertical
|
|
||||||
- type: horizontal-stack
|
- type: horizontal-stack
|
||||||
cards:
|
cards:
|
||||||
- type: custom:mushroom-entity-card
|
- type: custom:mushroom-entity-card
|
||||||
|
|||||||
+14
-13
@@ -19,13 +19,13 @@ cards:
|
|||||||
max: 25
|
max: 25
|
||||||
segments:
|
segments:
|
||||||
- from: 5
|
- from: 5
|
||||||
color: '#4dab6d'
|
color: "#4dab6d"
|
||||||
- from: 10
|
- from: 10
|
||||||
color: '#c1da64'
|
color: "#c1da64"
|
||||||
- from: 15
|
- from: 15
|
||||||
color: '#fabd57'
|
color: "#fabd57"
|
||||||
- from: 20.6
|
- from: 20.6
|
||||||
color: '#ee4d55'
|
color: "#ee4d55"
|
||||||
name: Recent Precipitation
|
name: Recent Precipitation
|
||||||
- type: gauge
|
- type: gauge
|
||||||
entity: input_number.sprinkler_maximum_temperature_measured
|
entity: input_number.sprinkler_maximum_temperature_measured
|
||||||
@@ -36,11 +36,11 @@ cards:
|
|||||||
- from: 61
|
- from: 61
|
||||||
color: var(--info-color)
|
color: var(--info-color)
|
||||||
- from: 70
|
- from: 70
|
||||||
color: '#4dab6d'
|
color: "#4dab6d"
|
||||||
- from: 79
|
- from: 79
|
||||||
color: '#c1da64'
|
color: "#c1da64"
|
||||||
- from: 88
|
- from: 88
|
||||||
color: '#fabd57'
|
color: "#fabd57"
|
||||||
name: Recent High Temp
|
name: Recent High Temp
|
||||||
- type: gauge
|
- type: gauge
|
||||||
entity: sensor.sprinkler_days_since_last_watering
|
entity: sensor.sprinkler_days_since_last_watering
|
||||||
@@ -49,18 +49,19 @@ cards:
|
|||||||
max: 4
|
max: 4
|
||||||
segments:
|
segments:
|
||||||
- from: 0
|
- from: 0
|
||||||
color: '#ee4d55'
|
color: "#ee4d55"
|
||||||
- from: 1
|
- from: 1
|
||||||
color: '#fabd57'
|
color: "#fabd57"
|
||||||
- from: 2
|
- from: 2
|
||||||
color: '#c1da64'
|
color: "#c1da64"
|
||||||
- from: 3
|
- from: 3
|
||||||
color: '#4dab6d'
|
color: "#4dab6d"
|
||||||
name: Expected Days Between Watering
|
name: Expected Days Between Watering
|
||||||
- !include /config/lovelace/plant-cards/plant_sensor_cea4.yaml
|
- !include /config/lovelace/plant-cards/plant_sensor_cea4.yaml
|
||||||
- !include /config/lovelace/plant-cards/plant_sensor_3eae.yaml
|
- !include /config/lovelace/plant-cards/plant_sensor_3eae.yaml
|
||||||
- !include /config/lovelace/plant-cards/plant_sensor_3eb0.yaml
|
- !include /config/lovelace/plant-cards/plant_sensor_3eb0.yaml
|
||||||
- !include /config/lovelace/plant-cards/fineoffset_wh51_0ce593.yaml
|
- !include /config/lovelace/plant-cards/hasta_soil_sensor.yaml
|
||||||
|
- !include /config/lovelace/plant-cards/daisy_soil_sensor.yaml
|
||||||
|
|
||||||
- type: vertical-stack
|
- type: vertical-stack
|
||||||
view_layout:
|
view_layout:
|
||||||
@@ -74,7 +75,7 @@ cards:
|
|||||||
action: toggle
|
action: toggle
|
||||||
- type: entities
|
- type: entities
|
||||||
entities:
|
entities:
|
||||||
- entity: sensor.ecowitt_wh40_21917_precipitation
|
- entity: sensor.rain_gauge_precipitation
|
||||||
secondary_info: last-updated
|
secondary_info: last-updated
|
||||||
- entity: binary_sensor.is_raining
|
- entity: binary_sensor.is_raining
|
||||||
secondary_info: last-changed
|
secondary_info: last-changed
|
||||||
|
|||||||
@@ -7,9 +7,9 @@ badges: []
|
|||||||
cards:
|
cards:
|
||||||
- type: vertical-stack
|
- type: vertical-stack
|
||||||
cards:
|
cards:
|
||||||
- type: custom:mushroom-chips-card
|
# - type: custom:mushroom-chips-card
|
||||||
chips:
|
# chips:
|
||||||
- type: back
|
# - type: back
|
||||||
- type: horizontal-stack
|
- type: horizontal-stack
|
||||||
cards:
|
cards:
|
||||||
- hours_to_show: 24
|
- hours_to_show: 24
|
||||||
|
|||||||
+2
-1
@@ -1,4 +1,5 @@
|
|||||||
type: vertical-stack
|
type: vertical-stack
|
||||||
cards:
|
cards:
|
||||||
- type: plant-status
|
- type: plant-status
|
||||||
entity: plant.fineoffset_wh51_0ce593
|
entity: plant.daisy_soil_sensor
|
||||||
|
|
||||||
@@ -0,0 +1,4 @@
|
|||||||
|
type: vertical-stack
|
||||||
|
cards:
|
||||||
|
- type: plant-status
|
||||||
|
entity: plant.hasta_soil_sensor
|
||||||
@@ -25,13 +25,13 @@ elements:
|
|||||||
# text-transform: capitalize
|
# text-transform: capitalize
|
||||||
|
|
||||||
- type: state-label
|
- type: state-label
|
||||||
entity: sensor.acurite_592txr_a_temperature
|
entity: sensor.back_yard_thermostat_temperature
|
||||||
style:
|
style:
|
||||||
left: 15%
|
left: 15%
|
||||||
top: 35%
|
top: 35%
|
||||||
font-size: 180%
|
font-size: 180%
|
||||||
- type: state-label
|
- type: state-label
|
||||||
entity: sensor.acurite_592txr_a_humidity
|
entity: sensor.back_yard_thermostat_humidity
|
||||||
style:
|
style:
|
||||||
left: 85%
|
left: 85%
|
||||||
top: 35%
|
top: 35%
|
||||||
|
|||||||
@@ -30,13 +30,13 @@ elements:
|
|||||||
text-transform: capitalize
|
text-transform: capitalize
|
||||||
|
|
||||||
- type: state-label
|
- type: state-label
|
||||||
entity: sensor.lacrosse_tx141thbv2_0_temperature
|
entity: sensor.front_yard_thermostat_temperature
|
||||||
style:
|
style:
|
||||||
left: 15%
|
left: 15%
|
||||||
top: 35%
|
top: 35%
|
||||||
font-size: 180%
|
font-size: 180%
|
||||||
- type: state-label
|
- type: state-label
|
||||||
entity: sensor.lacrosse_tx141thbv2_0_humidity
|
entity: sensor.front_yard_thermostat_humidity
|
||||||
style:
|
style:
|
||||||
left: 85%
|
left: 85%
|
||||||
top: 35%
|
top: 35%
|
||||||
|
|||||||
@@ -50,7 +50,7 @@ cards:
|
|||||||
- sensor.disk_use_percent_home
|
- sensor.disk_use_percent_home
|
||||||
font_size: 50
|
font_size: 50
|
||||||
name: HA Disk
|
name: HA Disk
|
||||||
hours_to_show: 96
|
hours_to_show: 4
|
||||||
points_per_hour: 3
|
points_per_hour: 3
|
||||||
show:
|
show:
|
||||||
fill: false
|
fill: false
|
||||||
|
|||||||
@@ -15,6 +15,7 @@ cards:
|
|||||||
show_header_toggle: false
|
show_header_toggle: false
|
||||||
entities:
|
entities:
|
||||||
- entity: device_tracker.chevrolet_mylink
|
- entity: device_tracker.chevrolet_mylink
|
||||||
|
- entity: device_tracker.chevrolet_traverse_location
|
||||||
|
|
||||||
- type: entities
|
- type: entities
|
||||||
title: Bridget's Tablet
|
title: Bridget's Tablet
|
||||||
|
|||||||
@@ -97,7 +97,8 @@ cards:
|
|||||||
- entities:
|
- entities:
|
||||||
- plant.plant_sensor_cea4
|
- plant.plant_sensor_cea4
|
||||||
- plant.plant_sensor_3eae
|
- plant.plant_sensor_3eae
|
||||||
- plant.fineoffset_wh51_0ce593
|
- plant.hasta_soil_sensor
|
||||||
|
- plant.daisy_soil_sensor
|
||||||
- plant.plant_sensor_3eb0
|
- plant.plant_sensor_3eb0
|
||||||
states:
|
states:
|
||||||
- state: "problem"
|
- state: "problem"
|
||||||
@@ -386,14 +387,14 @@ cards:
|
|||||||
|
|
||||||
# Outside is expected to be colder/hotter
|
# Outside is expected to be colder/hotter
|
||||||
- entities:
|
- entities:
|
||||||
- sensor.lacrosse_tx141thbv2_0_temperature
|
- sensor.front_yard_thermostat_temperature
|
||||||
- sensor.front_porch_temperature
|
- sensor.front_porch_temperature
|
||||||
- sensor.deck_temperature
|
- sensor.deck_temperature
|
||||||
- sensor.garage_multisensor_air_temperature
|
- sensor.garage_multisensor_air_temperature
|
||||||
# - sensor.hvac_multisensor_supply
|
# - sensor.hvac_multisensor_supply
|
||||||
# - sensor.hvac_multisensor_return
|
# - sensor.hvac_multisensor_return
|
||||||
# - sensor.hvac_multisensor_ambient
|
# - sensor.hvac_multisensor_ambient
|
||||||
- sensor.acurite_592txr_a_temperature
|
- sensor.back_yard_thermostat_temperature
|
||||||
- sensor.outdoor_temperature
|
- sensor.outdoor_temperature
|
||||||
# text_template: '${entity.state ? entity.state : "unknown"} F'
|
# text_template: '${entity.state ? entity.state : "unknown"} F'
|
||||||
# An example of rounding up a number, i.e. a temperature of 90.1 becomes 91
|
# An example of rounding up a number, i.e. a temperature of 90.1 becomes 91
|
||||||
@@ -415,7 +416,7 @@ cards:
|
|||||||
'
|
'
|
||||||
|
|
||||||
- entities:
|
- entities:
|
||||||
- sensor.acurite_986_1r_48226_temperature
|
- sensor.kitchen_fridge_thermostat_temperature
|
||||||
text_template: '${entity.state ? Math.floor(entity.state) : "unknown"}'
|
text_template: '${entity.state ? Math.floor(entity.state) : "unknown"}'
|
||||||
class_template: '
|
class_template: '
|
||||||
var temp = parseFloat(entity.state.replace("°", ""));
|
var temp = parseFloat(entity.state.replace("°", ""));
|
||||||
@@ -430,7 +431,7 @@ cards:
|
|||||||
'
|
'
|
||||||
|
|
||||||
- entities:
|
- entities:
|
||||||
- sensor.acurite_986_2f_42383_temperature
|
- sensor.kitchen_freezer_thermostat_temperature
|
||||||
text_template: '${entity.state ? Math.floor(entity.state) : "unknown"}'
|
text_template: '${entity.state ? Math.floor(entity.state) : "unknown"}'
|
||||||
class_template: '
|
class_template: '
|
||||||
var temp = parseFloat(entity.state.replace("°", ""));
|
var temp = parseFloat(entity.state.replace("°", ""));
|
||||||
@@ -490,9 +491,9 @@ cards:
|
|||||||
'
|
'
|
||||||
|
|
||||||
- entities:
|
- entities:
|
||||||
- sensor.lacrosse_tx141thbv2_0_humidity
|
- sensor.front_yard_thermostat_humidity
|
||||||
- sensor.garage_multisensor_humidity
|
- sensor.garage_multisensor_humidity
|
||||||
- sensor.acurite_592txr_a_humidity
|
- sensor.back_yard_thermostat_humidity
|
||||||
- sensor.outdoor_humidity
|
- sensor.outdoor_humidity
|
||||||
text_template: '${entity.state ? Math.ceil(entity.state) : "unknown"} %'
|
text_template: '${entity.state ? Math.ceil(entity.state) : "unknown"} %'
|
||||||
class_template: '
|
class_template: '
|
||||||
|
|||||||
@@ -16,14 +16,12 @@ cards:
|
|||||||
name: Nursery
|
name: Nursery
|
||||||
- entity: sensor.thermostat_temperature
|
- entity: sensor.thermostat_temperature
|
||||||
name: Thermostat
|
name: Thermostat
|
||||||
- entity: sensor.bar_temperature
|
- entity: sensor.dining_room_multisensor_air_temperature
|
||||||
name: Dining Room
|
name: Dining Room
|
||||||
- entity: sensor.front_room_thermostat_temperature
|
- entity: sensor.front_room_thermostat_temperature
|
||||||
name: Front Room
|
name: Front Room
|
||||||
- entity: sensor.kitchen_multisensor_air_temperature
|
- entity: sensor.kitchen_multisensor_air_temperature
|
||||||
name: Kitchen
|
name: Kitchen
|
||||||
- entity: sensor.entryway_temperature
|
|
||||||
name: Entryway
|
|
||||||
hours_to_show: 12
|
hours_to_show: 12
|
||||||
refresh_interval: 60
|
refresh_interval: 60
|
||||||
title: Upstairs Temp
|
title: Upstairs Temp
|
||||||
@@ -33,12 +31,14 @@ cards:
|
|||||||
name: Master Bedroom
|
name: Master Bedroom
|
||||||
- entity: sensor.nursery_multisensor_humidity
|
- entity: sensor.nursery_multisensor_humidity
|
||||||
name: Nursery
|
name: Nursery
|
||||||
|
- entity: sensor.thermostat_humidity
|
||||||
|
name: Thermostat
|
||||||
|
- entity: sensor.dining_room_multisensor_humidity
|
||||||
|
name: Dining Room
|
||||||
- entity: sensor.front_room_thermostat_humidity
|
- entity: sensor.front_room_thermostat_humidity
|
||||||
name: Front Room
|
name: Front Room
|
||||||
- entity: sensor.kitchen_multisensor_humidity
|
- entity: sensor.kitchen_multisensor_humidity
|
||||||
name: Kitchen
|
name: Kitchen
|
||||||
- entity: sensor.thermostat_humidity
|
|
||||||
name: Thermostat
|
|
||||||
hours_to_show: 12
|
hours_to_show: 12
|
||||||
refresh_interval: 60
|
refresh_interval: 60
|
||||||
title: Upstairs Humidity
|
title: Upstairs Humidity
|
||||||
@@ -57,14 +57,12 @@ cards:
|
|||||||
- entities:
|
- entities:
|
||||||
- entity: sensor.computer_area_multisensor_air_temperature
|
- entity: sensor.computer_area_multisensor_air_temperature
|
||||||
name: Computer Area
|
name: Computer Area
|
||||||
- entity: sensor.entryway_temperature
|
|
||||||
name: Entryway
|
|
||||||
- entity: sensor.mancave_thermostat_temperature
|
|
||||||
name: Mancave
|
|
||||||
- entity: sensor.blue_room_thermostat_temperature
|
|
||||||
name: Blue Room
|
|
||||||
- entity: sensor.great_room_multisensor_air_temperature
|
- entity: sensor.great_room_multisensor_air_temperature
|
||||||
name: Great Room
|
name: Great Room
|
||||||
|
- entity: sensor.mancave_thermostat_temperature
|
||||||
|
name: Mancave
|
||||||
|
- entity: sensor.blue_room_multisensor_air_temperature
|
||||||
|
name: Blue Room
|
||||||
- entity: sensor.furnace_room_thermostat_temperature
|
- entity: sensor.furnace_room_thermostat_temperature
|
||||||
name: Furnace Room
|
name: Furnace Room
|
||||||
hours_to_show: 12
|
hours_to_show: 12
|
||||||
@@ -78,7 +76,7 @@ cards:
|
|||||||
name: Great Room
|
name: Great Room
|
||||||
- entity: sensor.mancave_thermostat_humidity
|
- entity: sensor.mancave_thermostat_humidity
|
||||||
name: Mancave
|
name: Mancave
|
||||||
- entity: sensor.blue_room_thermostat_humidity
|
- entity: sensor.blue_room_multisensor_humidity
|
||||||
name: Blue Room
|
name: Blue Room
|
||||||
- entity: sensor.furnace_room_thermostat_humidity
|
- entity: sensor.furnace_room_thermostat_humidity
|
||||||
name: Furnace Room
|
name: Furnace Room
|
||||||
@@ -137,7 +135,7 @@ cards:
|
|||||||
name: Nursery
|
name: Nursery
|
||||||
- entity: sensor.front_room_light_level
|
- entity: sensor.front_room_light_level
|
||||||
name: Front Room
|
name: Front Room
|
||||||
- entity: sensor.bar_light_level
|
- entity: sensor.dining_room_multisensor_illuminance
|
||||||
name: Dining Room
|
name: Dining Room
|
||||||
- entity: sensor.entryway_light_level
|
- entity: sensor.entryway_light_level
|
||||||
name: Entryway
|
name: Entryway
|
||||||
@@ -153,6 +151,8 @@ cards:
|
|||||||
name: Computer Area
|
name: Computer Area
|
||||||
- entity: sensor.great_room_multisensor_illuminance
|
- entity: sensor.great_room_multisensor_illuminance
|
||||||
name: Great Room
|
name: Great Room
|
||||||
|
- entity: sensor.blue_room_multisensor_illuminance
|
||||||
|
name: Blue Room
|
||||||
hours_to_show: 12
|
hours_to_show: 12
|
||||||
refresh_interval: 60
|
refresh_interval: 60
|
||||||
title: Downstairs Light Level
|
title: Downstairs Light Level
|
||||||
|
|||||||
@@ -843,7 +843,7 @@ badges:
|
|||||||
navigation_path: /phone-yaml/plants
|
navigation_path: /phone-yaml/plants
|
||||||
hold_action:
|
hold_action:
|
||||||
action: more-info
|
action: more-info
|
||||||
- entity: plant.fineoffset_wh51_0ce593
|
- entity: plant.hasta_soil_sensor
|
||||||
name: Hostas
|
name: Hostas
|
||||||
tap_action:
|
tap_action:
|
||||||
action: navigate
|
action: navigate
|
||||||
|
|||||||
@@ -43,6 +43,7 @@ cards:
|
|||||||
- type: calendar
|
- type: calendar
|
||||||
entities:
|
entities:
|
||||||
- calendar.clint
|
- calendar.clint
|
||||||
|
- calendar.wmu_calendar
|
||||||
|
|
||||||
- type: vertical-stack
|
- type: vertical-stack
|
||||||
cards:
|
cards:
|
||||||
@@ -114,4 +115,5 @@ cards:
|
|||||||
- type: calendar
|
- type: calendar
|
||||||
entities:
|
entities:
|
||||||
- calendar.bridget
|
- calendar.bridget
|
||||||
- calendar.my_custody
|
- calendar.allegan_public_schools
|
||||||
|
- calendar.west_ward_elementary
|
||||||
|
|||||||
@@ -39,8 +39,8 @@
|
|||||||
inkscape:pageopacity="0.0"
|
inkscape:pageopacity="0.0"
|
||||||
inkscape:pageshadow="2"
|
inkscape:pageshadow="2"
|
||||||
inkscape:zoom="0.02"
|
inkscape:zoom="0.02"
|
||||||
inkscape:cx="48525"
|
inkscape:cx="56275"
|
||||||
inkscape:cy="32825"
|
inkscape:cy="10675"
|
||||||
inkscape:document-units="px"
|
inkscape:document-units="px"
|
||||||
inkscape:current-layer="layer1"
|
inkscape:current-layer="layer1"
|
||||||
showgrid="true"
|
showgrid="true"
|
||||||
@@ -49,7 +49,7 @@
|
|||||||
showborder="true"
|
showborder="true"
|
||||||
inkscape:window-width="1920"
|
inkscape:window-width="1920"
|
||||||
inkscape:window-height="1009"
|
inkscape:window-height="1009"
|
||||||
inkscape:window-x="1912"
|
inkscape:window-x="-8"
|
||||||
inkscape:window-y="-8"
|
inkscape:window-y="-8"
|
||||||
inkscape:window-maximized="1"
|
inkscape:window-maximized="1"
|
||||||
showguides="true"
|
showguides="true"
|
||||||
@@ -1278,20 +1278,20 @@
|
|||||||
transform="translate(-33.504291,-4.0861608)">
|
transform="translate(-33.504291,-4.0861608)">
|
||||||
<rect
|
<rect
|
||||||
style="fill:none;stroke:none;stroke-width:0.265857;stroke-miterlimit:4;stroke-dasharray:none"
|
style="fill:none;stroke:none;stroke-width:0.265857;stroke-miterlimit:4;stroke-dasharray:none"
|
||||||
id="sensor.acurite_986_2f_42383_temperature_2"
|
id="sensor.kitchen_freezer_thermostat_temperature_2"
|
||||||
width="10.375003"
|
width="10.375003"
|
||||||
height="38.750011"
|
height="38.750011"
|
||||||
x="353.625"
|
x="353.625"
|
||||||
y="-17638.875"
|
y="-17638.875"
|
||||||
inkscape:label="sensor.acurite_986_2f_42383_temperature_2" />
|
inkscape:label="sensor.kitchen_freezer_thermostat_temperature_2" />
|
||||||
<rect
|
<rect
|
||||||
style="fill:none;stroke:none;stroke-width:0.135077;stroke-miterlimit:4;stroke-dasharray:none"
|
style="fill:none;stroke:none;stroke-width:0.135077;stroke-miterlimit:4;stroke-dasharray:none"
|
||||||
id="sensor.acurite_986_1r_48226_temperature_2"
|
id="sensor.kitchen_fridge_thermostat_temperature_2"
|
||||||
width="14.875127"
|
width="14.875127"
|
||||||
height="39.000011"
|
height="39.000011"
|
||||||
x="365.125"
|
x="365.125"
|
||||||
y="-17639"
|
y="-17639"
|
||||||
inkscape:label="sensor.acurite_986_1r_48226_temperature_2" />
|
inkscape:label="sensor.kitchen_fridge_thermostat_temperature_2" />
|
||||||
<g
|
<g
|
||||||
id="g991"
|
id="g991"
|
||||||
transform="matrix(0.08582121,0,0,0.08582121,336.50561,-17642.293)">
|
transform="matrix(0.08582121,0,0,0.08582121,336.50561,-17642.293)">
|
||||||
@@ -3864,7 +3864,7 @@
|
|||||||
d="m 720.0222,-17679.003 a 4.5,4.5 0 0 1 4.99225,3.941 4.5,4.5 0 0 1 -3.93422,4.997 4.5,4.5 0 0 1 -5.00204,-3.928 4.5,4.5 0 0 1 3.92178,-5.007"
|
d="m 720.0222,-17679.003 a 4.5,4.5 0 0 1 4.99225,3.941 4.5,4.5 0 0 1 -3.93422,4.997 4.5,4.5 0 0 1 -5.00204,-3.928 4.5,4.5 0 0 1 3.92178,-5.007"
|
||||||
inkscape:label="light.storage_room"
|
inkscape:label="light.storage_room"
|
||||||
sodipodi:arc-type="arc" />
|
sodipodi:arc-type="arc" />
|
||||||
inkscape:label="light.front_porch_overhead" /> <rect
|
inkscape:label="light.front_porch_overhead" /> <rect
|
||||||
id="rect12-8-8-9-3-20-4-5-3"
|
id="rect12-8-8-9-3-20-4-5-3"
|
||||||
width="43.5"
|
width="43.5"
|
||||||
height="4.5"
|
height="4.5"
|
||||||
@@ -4307,8 +4307,8 @@
|
|||||||
<text
|
<text
|
||||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:9.36111px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;display:inline;fill:#d4d4d4;fill-opacity:1;stroke-width:2.63435"
|
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:9.36111px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;display:inline;fill:#d4d4d4;fill-opacity:1;stroke-width:2.63435"
|
||||||
transform="scale(0.93757302,1.0665836)"
|
transform="scale(0.93757302,1.0665836)"
|
||||||
inkscape:label="sensor.acurite_986_2f_42383_temperature"
|
inkscape:label="sensor.kitchen_freezer_thermostat_temperature"
|
||||||
id="sensor.acurite_986_2f_42383_temperature"
|
id="sensor.kitchen_freezer_thermostat_temperature"
|
||||||
y="-16506.842"
|
y="-16506.842"
|
||||||
x="342.57764"
|
x="342.57764"
|
||||||
xml:space="preserve"><tspan
|
xml:space="preserve"><tspan
|
||||||
@@ -4319,8 +4319,8 @@
|
|||||||
<text
|
<text
|
||||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:9.36111px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;display:inline;fill:#d4d4d4;fill-opacity:1;stroke-width:2.63435"
|
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:9.36111px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;display:inline;fill:#d4d4d4;fill-opacity:1;stroke-width:2.63435"
|
||||||
transform="scale(0.93757302,1.0665836)"
|
transform="scale(0.93757302,1.0665836)"
|
||||||
inkscape:label="sensor.acurite_986_1r_48226_temperature"
|
inkscape:label="sensor.kitchen_fridge_thermostat_temperature"
|
||||||
id="sensor.acurite_986_1r_48226_temperature"
|
id="sensor.kitchen_fridge_thermostat_temperature"
|
||||||
y="-16506.842"
|
y="-16506.842"
|
||||||
x="357.37598"
|
x="357.37598"
|
||||||
xml:space="preserve"><tspan
|
xml:space="preserve"><tspan
|
||||||
@@ -4976,8 +4976,8 @@
|
|||||||
<text
|
<text
|
||||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:9.36111px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;display:inline;fill:#d4d4d4;fill-opacity:1;stroke-width:2.63435"
|
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:9.36111px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;display:inline;fill:#d4d4d4;fill-opacity:1;stroke-width:2.63435"
|
||||||
transform="scale(0.93757302,1.0665836)"
|
transform="scale(0.93757302,1.0665836)"
|
||||||
inkscape:label="sensor.lacrosse_tx141thbv2_0_temperature"
|
inkscape:label="sensor.front_yard_thermostat_temperature"
|
||||||
id="sensor.lacrosse_tx141thbv2_0_temperature"
|
id="sensor.front_yard_thermostat_temperature"
|
||||||
y="-16661.049"
|
y="-16661.049"
|
||||||
x="742.64539"
|
x="742.64539"
|
||||||
xml:space="preserve"><tspan
|
xml:space="preserve"><tspan
|
||||||
@@ -5012,8 +5012,8 @@
|
|||||||
<text
|
<text
|
||||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:9.36111px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;display:inline;fill:#d4d4d4;fill-opacity:1;stroke-width:2.63435"
|
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:9.36111px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;display:inline;fill:#d4d4d4;fill-opacity:1;stroke-width:2.63435"
|
||||||
transform="scale(0.93757302,1.0665836)"
|
transform="scale(0.93757302,1.0665836)"
|
||||||
inkscape:label="sensor.lacrosse_tx141thbv2_0_humidity"
|
inkscape:label="sensor.front_yard_thermostat_humidity"
|
||||||
id="sensor.lacrosse_tx141thbv2_0_humidity"
|
id="sensor.front_yard_thermostat_humidity"
|
||||||
y="-16650.795"
|
y="-16650.795"
|
||||||
x="742.64539"
|
x="742.64539"
|
||||||
xml:space="preserve"><tspan
|
xml:space="preserve"><tspan
|
||||||
@@ -5048,8 +5048,8 @@
|
|||||||
<text
|
<text
|
||||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:9.36111px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;display:inline;fill:#d4d4d4;fill-opacity:1;stroke-width:2.63435"
|
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:9.36111px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;display:inline;fill:#d4d4d4;fill-opacity:1;stroke-width:2.63435"
|
||||||
transform="scale(0.93757302,1.0665836)"
|
transform="scale(0.93757302,1.0665836)"
|
||||||
inkscape:label="sensor.acurite_592txr_a_temperature"
|
inkscape:label="sensor.back_yard_thermostat_temperature"
|
||||||
id="sensor.acurite_592txr_a_temperature"
|
id="sensor.back_yard_thermostat_temperature"
|
||||||
y="-16255.984"
|
y="-16255.984"
|
||||||
x="197.79414"
|
x="197.79414"
|
||||||
xml:space="preserve"><tspan
|
xml:space="preserve"><tspan
|
||||||
@@ -5060,8 +5060,8 @@
|
|||||||
<text
|
<text
|
||||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:9.36111px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;display:inline;fill:#d4d4d4;fill-opacity:1;stroke-width:2.63435"
|
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:9.36111px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;display:inline;fill:#d4d4d4;fill-opacity:1;stroke-width:2.63435"
|
||||||
transform="scale(0.93757302,1.0665836)"
|
transform="scale(0.93757302,1.0665836)"
|
||||||
inkscape:label="sensor.acurite_592txr_a_humidity"
|
inkscape:label="sensor.back_yard_thermostat_humidity"
|
||||||
id="sensor.acurite_592txr_a_humidity"
|
id="sensor.back_yard_thermostat_humidity"
|
||||||
y="-16245.73"
|
y="-16245.73"
|
||||||
x="197.79414"
|
x="197.79414"
|
||||||
xml:space="preserve"><tspan
|
xml:space="preserve"><tspan
|
||||||
@@ -5070,24 +5070,24 @@
|
|||||||
x="197.79414"
|
x="197.79414"
|
||||||
y="-16245.73">---------</tspan></text>
|
y="-16245.73">---------</tspan></text>
|
||||||
<g
|
<g
|
||||||
id="plant.fineoffset_wh51_00f935"
|
id="plant.daisy_soil_sensor"
|
||||||
inkscape:label="plant.fineoffset_wh51_00f935"
|
inkscape:label="plant.daisy_soil_sensor"
|
||||||
style="fill:#000000;fill-opacity:1">
|
style="fill:#000000;fill-opacity:1">
|
||||||
<path
|
<path
|
||||||
d="m 1106.6751,-17366.7 a 5.3129774,5.3129774 0 0 0 5.3101,5.098 c 0,-2.832 -2.3802,-5.098 -5.3101,-5.098 m 5.3101,-4.536 a 1.4758274,1.4758274 0 0 1 1.4735,1.698 1.4758274,1.4758274 0 0 1 -1.4735,1.705 1.4758274,1.4758274 0 0 1 -1.4735,-1.705 1.4758274,1.4758274 0 0 1 1.4735,-1.698 m -3.78,2.836 a 1.4758274,1.4758274 0 0 0 1.4792,1.7 c 0.3398,0 0.6007,0 0.8273,0 0,0 0,0 0,0 a 1.4758274,1.4758274 0 0 0 1.4735,1.7 1.4758274,1.4758274 0 0 0 1.4735,-1.7 c 0,0 0,0 0,0 0.2266,0 0.5098,0 0.8274,0 0.8161,0 1.4734,-0.567 1.4734,-1.7 0,-0.571 -0.3398,-1.138 -0.8443,-1.138 0.5098,0 0.8443,-0.567 0.8443,-1.133 0,-0.565 -0.663,-1.699 -1.4734,-1.699 -0.3399,0 -0.6007,0 -0.8274,0 0,0 0,0 0,0 a 1.4758274,1.4758274 0 0 0 -1.4735,-1.699 1.4758274,1.4758274 0 0 0 -1.4735,1.699 c 0,0 0,0 0,0 -0.2265,0 -0.5098,0 -0.8273,0 a 1.4758274,1.4758274 0 0 0 -1.4792,1.699 c 0,0.566 0.3399,1.133 0.8444,1.133 -0.5098,0 -0.8444,0.567 -0.8444,1.138 m 3.78,6.911 a 5.3129774,5.3129774 0 0 0 5.3102,-5.098 c -2.9526,0 -5.3102,2.266 -5.3102,5.098 z"
|
d="m 1106.6751,-17366.7 a 5.3129774,5.3129774 0 0 0 5.3101,5.098 c 0,-2.832 -2.3802,-5.098 -5.3101,-5.098 m 5.3101,-4.536 a 1.4758274,1.4758274 0 0 1 1.4735,1.698 1.4758274,1.4758274 0 0 1 -1.4735,1.705 1.4758274,1.4758274 0 0 1 -1.4735,-1.705 1.4758274,1.4758274 0 0 1 1.4735,-1.698 m -3.78,2.836 a 1.4758274,1.4758274 0 0 0 1.4792,1.7 c 0.3398,0 0.6007,0 0.8273,0 0,0 0,0 0,0 a 1.4758274,1.4758274 0 0 0 1.4735,1.7 1.4758274,1.4758274 0 0 0 1.4735,-1.7 c 0,0 0,0 0,0 0.2266,0 0.5098,0 0.8274,0 0.8161,0 1.4734,-0.567 1.4734,-1.7 0,-0.571 -0.3398,-1.138 -0.8443,-1.138 0.5098,0 0.8443,-0.567 0.8443,-1.133 0,-0.565 -0.663,-1.699 -1.4734,-1.699 -0.3399,0 -0.6007,0 -0.8274,0 0,0 0,0 0,0 a 1.4758274,1.4758274 0 0 0 -1.4735,-1.699 1.4758274,1.4758274 0 0 0 -1.4735,1.699 c 0,0 0,0 0,0 -0.2265,0 -0.5098,0 -0.8273,0 a 1.4758274,1.4758274 0 0 0 -1.4792,1.699 c 0,0.566 0.3399,1.133 0.8444,1.133 -0.5098,0 -0.8444,0.567 -0.8444,1.138 m 3.78,6.911 a 5.3129774,5.3129774 0 0 0 5.3102,-5.098 c -2.9526,0 -5.3102,2.266 -5.3102,5.098 z"
|
||||||
id="plant.fineoffset_wh51_00f935_1"
|
id="plant.hasta_soil_sensor_1"
|
||||||
style="fill:#000000;fill-opacity:1;stroke-width:0.590332"
|
style="fill:#000000;fill-opacity:1;stroke-width:0.590332"
|
||||||
inkscape:label="plant.fineoffset_wh51_00f935_1" />
|
inkscape:label="plant.hasta_soil_sensor_1" />
|
||||||
<path
|
<path
|
||||||
d="m 1091.1993,-17353.224 a 5.3129774,5.3129774 0 0 0 5.3101,5.098 c 0,-2.832 -2.3802,-5.098 -5.3101,-5.098 m 5.3101,-4.536 a 1.4758274,1.4758274 0 0 1 1.4735,1.698 1.4758274,1.4758274 0 0 1 -1.4735,1.705 1.4758274,1.4758274 0 0 1 -1.4735,-1.705 1.4758274,1.4758274 0 0 1 1.4735,-1.698 m -3.78,2.836 a 1.4758274,1.4758274 0 0 0 1.4792,1.7 c 0.3398,0 0.6007,0 0.8273,0 0,0 0,0 0,0 a 1.4758274,1.4758274 0 0 0 1.4735,1.7 1.4758274,1.4758274 0 0 0 1.4735,-1.7 c 0,0 0,0 0,0 0.2266,0 0.5098,0 0.8274,0 0.8161,0 1.4734,-0.567 1.4734,-1.7 0,-0.571 -0.3398,-1.138 -0.8443,-1.138 0.5098,0 0.8443,-0.567 0.8443,-1.133 0,-0.565 -0.663,-1.699 -1.4734,-1.699 -0.3399,0 -0.6007,0 -0.8274,0 0,0 0,0 0,0 a 1.4758274,1.4758274 0 0 0 -1.4735,-1.699 1.4758274,1.4758274 0 0 0 -1.4735,1.699 c 0,0 0,0 0,0 -0.2265,0 -0.5098,0 -0.8273,0 a 1.4758274,1.4758274 0 0 0 -1.4792,1.699 c 0,0.566 0.3399,1.133 0.8444,1.133 -0.5098,0 -0.8444,0.567 -0.8444,1.138 m 3.78,6.911 a 5.3129774,5.3129774 0 0 0 5.3102,-5.098 c -2.9526,0 -5.3102,2.266 -5.3102,5.098 z"
|
d="m 1091.1993,-17353.224 a 5.3129774,5.3129774 0 0 0 5.3101,5.098 c 0,-2.832 -2.3802,-5.098 -5.3101,-5.098 m 5.3101,-4.536 a 1.4758274,1.4758274 0 0 1 1.4735,1.698 1.4758274,1.4758274 0 0 1 -1.4735,1.705 1.4758274,1.4758274 0 0 1 -1.4735,-1.705 1.4758274,1.4758274 0 0 1 1.4735,-1.698 m -3.78,2.836 a 1.4758274,1.4758274 0 0 0 1.4792,1.7 c 0.3398,0 0.6007,0 0.8273,0 0,0 0,0 0,0 a 1.4758274,1.4758274 0 0 0 1.4735,1.7 1.4758274,1.4758274 0 0 0 1.4735,-1.7 c 0,0 0,0 0,0 0.2266,0 0.5098,0 0.8274,0 0.8161,0 1.4734,-0.567 1.4734,-1.7 0,-0.571 -0.3398,-1.138 -0.8443,-1.138 0.5098,0 0.8443,-0.567 0.8443,-1.133 0,-0.565 -0.663,-1.699 -1.4734,-1.699 -0.3399,0 -0.6007,0 -0.8274,0 0,0 0,0 0,0 a 1.4758274,1.4758274 0 0 0 -1.4735,-1.699 1.4758274,1.4758274 0 0 0 -1.4735,1.699 c 0,0 0,0 0,0 -0.2265,0 -0.5098,0 -0.8273,0 a 1.4758274,1.4758274 0 0 0 -1.4792,1.699 c 0,0.566 0.3399,1.133 0.8444,1.133 -0.5098,0 -0.8444,0.567 -0.8444,1.138 m 3.78,6.911 a 5.3129774,5.3129774 0 0 0 5.3102,-5.098 c -2.9526,0 -5.3102,2.266 -5.3102,5.098 z"
|
||||||
id="plant.fineoffset_wh51_00f935_1-7"
|
id="plant.hasta_soil_sensor_1-7"
|
||||||
style="fill:#000000;fill-opacity:1;stroke-width:0.590332"
|
style="fill:#000000;fill-opacity:1;stroke-width:0.590332"
|
||||||
inkscape:label="plant.fineoffset_wh51_00f935_1" />
|
inkscape:label="plant.hasta_soil_sensor_1" />
|
||||||
<path
|
<path
|
||||||
d="m 1109.2164,-17348.162 a 5.3129774,5.3129774 0 0 0 5.3101,5.098 c 0,-2.832 -2.3802,-5.098 -5.3101,-5.098 m 5.3101,-4.536 a 1.4758274,1.4758274 0 0 1 1.4735,1.698 1.4758274,1.4758274 0 0 1 -1.4735,1.705 1.4758274,1.4758274 0 0 1 -1.4735,-1.705 1.4758274,1.4758274 0 0 1 1.4735,-1.698 m -3.78,2.836 a 1.4758274,1.4758274 0 0 0 1.4792,1.7 c 0.3398,0 0.6007,0 0.8273,0 0,0 0,0 0,0 a 1.4758274,1.4758274 0 0 0 1.4735,1.7 1.4758274,1.4758274 0 0 0 1.4735,-1.7 c 0,0 0,0 0,0 0.2266,0 0.5098,0 0.8274,0 0.8161,0 1.4734,-0.567 1.4734,-1.7 0,-0.571 -0.3398,-1.138 -0.8443,-1.138 0.5098,0 0.8443,-0.567 0.8443,-1.133 0,-0.565 -0.663,-1.699 -1.4734,-1.699 -0.3399,0 -0.6007,0 -0.8274,0 0,0 0,0 0,0 a 1.4758274,1.4758274 0 0 0 -1.4735,-1.699 1.4758274,1.4758274 0 0 0 -1.4735,1.699 c 0,0 0,0 0,0 -0.2265,0 -0.5098,0 -0.8273,0 a 1.4758274,1.4758274 0 0 0 -1.4792,1.699 c 0,0.566 0.3399,1.133 0.8444,1.133 -0.5098,0 -0.8444,0.567 -0.8444,1.138 m 3.78,6.911 a 5.3129774,5.3129774 0 0 0 5.3102,-5.098 c -2.9526,0 -5.3102,2.266 -5.3102,5.098 z"
|
d="m 1109.2164,-17348.162 a 5.3129774,5.3129774 0 0 0 5.3101,5.098 c 0,-2.832 -2.3802,-5.098 -5.3101,-5.098 m 5.3101,-4.536 a 1.4758274,1.4758274 0 0 1 1.4735,1.698 1.4758274,1.4758274 0 0 1 -1.4735,1.705 1.4758274,1.4758274 0 0 1 -1.4735,-1.705 1.4758274,1.4758274 0 0 1 1.4735,-1.698 m -3.78,2.836 a 1.4758274,1.4758274 0 0 0 1.4792,1.7 c 0.3398,0 0.6007,0 0.8273,0 0,0 0,0 0,0 a 1.4758274,1.4758274 0 0 0 1.4735,1.7 1.4758274,1.4758274 0 0 0 1.4735,-1.7 c 0,0 0,0 0,0 0.2266,0 0.5098,0 0.8274,0 0.8161,0 1.4734,-0.567 1.4734,-1.7 0,-0.571 -0.3398,-1.138 -0.8443,-1.138 0.5098,0 0.8443,-0.567 0.8443,-1.133 0,-0.565 -0.663,-1.699 -1.4734,-1.699 -0.3399,0 -0.6007,0 -0.8274,0 0,0 0,0 0,0 a 1.4758274,1.4758274 0 0 0 -1.4735,-1.699 1.4758274,1.4758274 0 0 0 -1.4735,1.699 c 0,0 0,0 0,0 -0.2265,0 -0.5098,0 -0.8273,0 a 1.4758274,1.4758274 0 0 0 -1.4792,1.699 c 0,0.566 0.3399,1.133 0.8444,1.133 -0.5098,0 -0.8444,0.567 -0.8444,1.138 m 3.78,6.911 a 5.3129774,5.3129774 0 0 0 5.3102,-5.098 c -2.9526,0 -5.3102,2.266 -5.3102,5.098 z"
|
||||||
id="plant.fineoffset_wh51_00f935_1-6"
|
id="plant.hasta_soil_sensor_1-6"
|
||||||
style="fill:#000000;fill-opacity:1;stroke-width:0.590332"
|
style="fill:#000000;fill-opacity:1;stroke-width:0.590332"
|
||||||
inkscape:label="plant.fineoffset_wh51_00f935_1" />
|
inkscape:label="plant.hasta_soil_sensor_1" />
|
||||||
</g>
|
</g>
|
||||||
<path
|
<path
|
||||||
d="m 961.59437,-17416.444 a 5.3129802,5.3128667 0 0 0 5.31011,5.098 c 0,-2.832 -2.38019,-5.098 -5.31011,-5.098 m 5.31011,-4.536 a 1.4758282,1.4757966 0 0 1 1.47351,1.698 1.4758282,1.4757966 0 0 1 -1.47351,1.705 1.4758282,1.4757966 0 0 1 -1.47344,-1.705 1.4758282,1.4757966 0 0 1 1.47344,-1.698 m -3.77996,2.836 a 1.4758282,1.4757966 0 0 0 1.47913,1.7 c 0.33986,0 0.6007,0 0.82739,0 0,0 0,0 0,0 a 1.4758282,1.4757966 0 0 0 1.47344,1.7 1.4758282,1.4757966 0 0 0 1.47351,-1.7 c 0,0 0,0 0,0 0.22659,0 0.50981,0 0.82739,0 0.81607,0 1.47346,-0.567 1.47346,-1.7 0,-0.571 -0.33986,-1.138 -0.84438,-1.138 0.50981,0 0.84438,-0.566 0.84438,-1.133 0,-0.565 -0.66306,-1.698 -1.47346,-1.698 -0.33986,0 -0.6007,0 -0.82739,0 0,0 0,0 0,0 a 1.4758282,1.4757966 0 0 0 -1.47351,-1.7 1.4758282,1.4757966 0 0 0 -1.47344,1.7 c 0,0 0,0 0,0 -0.22658,0 -0.50981,0 -0.82739,0 a 1.4758282,1.4757966 0 0 0 -1.47913,1.698 c 0,0.567 0.33987,1.133 0.84439,1.133 -0.50981,0 -0.84439,0.567 -0.84439,1.138 m 3.77996,6.911 a 5.3129802,5.3128667 0 0 0 5.31018,-5.098 c -2.95257,0 -5.31018,2.267 -5.31018,5.098 z"
|
d="m 961.59437,-17416.444 a 5.3129802,5.3128667 0 0 0 5.31011,5.098 c 0,-2.832 -2.38019,-5.098 -5.31011,-5.098 m 5.31011,-4.536 a 1.4758282,1.4757966 0 0 1 1.47351,1.698 1.4758282,1.4757966 0 0 1 -1.47351,1.705 1.4758282,1.4757966 0 0 1 -1.47344,-1.705 1.4758282,1.4757966 0 0 1 1.47344,-1.698 m -3.77996,2.836 a 1.4758282,1.4757966 0 0 0 1.47913,1.7 c 0.33986,0 0.6007,0 0.82739,0 0,0 0,0 0,0 a 1.4758282,1.4757966 0 0 0 1.47344,1.7 1.4758282,1.4757966 0 0 0 1.47351,-1.7 c 0,0 0,0 0,0 0.22659,0 0.50981,0 0.82739,0 0.81607,0 1.47346,-0.567 1.47346,-1.7 0,-0.571 -0.33986,-1.138 -0.84438,-1.138 0.50981,0 0.84438,-0.566 0.84438,-1.133 0,-0.565 -0.66306,-1.698 -1.47346,-1.698 -0.33986,0 -0.6007,0 -0.82739,0 0,0 0,0 0,0 a 1.4758282,1.4757966 0 0 0 -1.47351,-1.7 1.4758282,1.4757966 0 0 0 -1.47344,1.7 c 0,0 0,0 0,0 -0.22658,0 -0.50981,0 -0.82739,0 a 1.4758282,1.4757966 0 0 0 -1.47913,1.698 c 0,0.567 0.33987,1.133 0.84439,1.133 -0.50981,0 -0.84439,0.567 -0.84439,1.138 m 3.77996,6.911 a 5.3129802,5.3128667 0 0 0 5.31018,-5.098 c -2.95257,0 -5.31018,2.267 -5.31018,5.098 z"
|
||||||
@@ -5105,19 +5105,19 @@
|
|||||||
style="fill:#000000;fill-opacity:1;stroke-width:0.590325"
|
style="fill:#000000;fill-opacity:1;stroke-width:0.590325"
|
||||||
inkscape:label="plant.plant_sensor_3eb0" />
|
inkscape:label="plant.plant_sensor_3eb0" />
|
||||||
<g
|
<g
|
||||||
id="plant.fineoffset_wh51_0ce593"
|
id="plant.hasta_soil_sensor"
|
||||||
inkscape:label="plant.fineoffset_wh51_0ce593"
|
inkscape:label="plant.hasta_soil_sensor"
|
||||||
style="fill:#000000;fill-opacity:1">
|
style="fill:#000000;fill-opacity:1">
|
||||||
<path
|
<path
|
||||||
d="m 354.70542,-17793.867 a 5.3129802,5.3128667 0 0 0 5.31011,5.098 c 0,-2.832 -2.38019,-5.098 -5.31011,-5.098 m 5.31011,-4.536 a 1.4758282,1.4757966 0 0 1 1.47351,1.698 1.4758282,1.4757966 0 0 1 -1.47351,1.705 1.4758282,1.4757966 0 0 1 -1.47344,-1.705 1.4758282,1.4757966 0 0 1 1.47344,-1.698 m -3.77996,2.836 a 1.4758282,1.4757966 0 0 0 1.47913,1.7 c 0.33986,0 0.6007,0 0.82739,0 0,0 0,0 0,0 a 1.4758282,1.4757966 0 0 0 1.47344,1.7 1.4758282,1.4757966 0 0 0 1.47351,-1.7 c 0,0 0,0 0,0 0.22659,0 0.50981,0 0.82739,0 0.81607,0 1.47346,-0.567 1.47346,-1.7 0,-0.571 -0.33986,-1.138 -0.84438,-1.138 0.50981,0 0.84438,-0.566 0.84438,-1.133 0,-0.565 -0.66306,-1.698 -1.47346,-1.698 -0.33986,0 -0.6007,0 -0.82739,0 0,0 0,0 0,0 a 1.4758282,1.4757966 0 0 0 -1.47351,-1.7 1.4758282,1.4757966 0 0 0 -1.47344,1.7 c 0,0 0,0 0,0 -0.22658,0 -0.50981,0 -0.82739,0 a 1.4758282,1.4757966 0 0 0 -1.47913,1.698 c 0,0.567 0.33987,1.133 0.84439,1.133 -0.50981,0 -0.84439,0.567 -0.84439,1.138 m 3.77996,6.911 a 5.3129802,5.3128667 0 0 0 5.31018,-5.098 c -2.95257,0 -5.31018,2.267 -5.31018,5.098 z"
|
d="m 354.70542,-17793.867 a 5.3129802,5.3128667 0 0 0 5.31011,5.098 c 0,-2.832 -2.38019,-5.098 -5.31011,-5.098 m 5.31011,-4.536 a 1.4758282,1.4757966 0 0 1 1.47351,1.698 1.4758282,1.4757966 0 0 1 -1.47351,1.705 1.4758282,1.4757966 0 0 1 -1.47344,-1.705 1.4758282,1.4757966 0 0 1 1.47344,-1.698 m -3.77996,2.836 a 1.4758282,1.4757966 0 0 0 1.47913,1.7 c 0.33986,0 0.6007,0 0.82739,0 0,0 0,0 0,0 a 1.4758282,1.4757966 0 0 0 1.47344,1.7 1.4758282,1.4757966 0 0 0 1.47351,-1.7 c 0,0 0,0 0,0 0.22659,0 0.50981,0 0.82739,0 0.81607,0 1.47346,-0.567 1.47346,-1.7 0,-0.571 -0.33986,-1.138 -0.84438,-1.138 0.50981,0 0.84438,-0.566 0.84438,-1.133 0,-0.565 -0.66306,-1.698 -1.47346,-1.698 -0.33986,0 -0.6007,0 -0.82739,0 0,0 0,0 0,0 a 1.4758282,1.4757966 0 0 0 -1.47351,-1.7 1.4758282,1.4757966 0 0 0 -1.47344,1.7 c 0,0 0,0 0,0 -0.22658,0 -0.50981,0 -0.82739,0 a 1.4758282,1.4757966 0 0 0 -1.47913,1.698 c 0,0.567 0.33987,1.133 0.84439,1.133 -0.50981,0 -0.84439,0.567 -0.84439,1.138 m 3.77996,6.911 a 5.3129802,5.3128667 0 0 0 5.31018,-5.098 c -2.95257,0 -5.31018,2.267 -5.31018,5.098 z"
|
||||||
id="plant.fineoffset_wh51_0ce593_1"
|
id="path1"
|
||||||
style="fill:#000000;fill-opacity:1;stroke-width:0.590325"
|
style="fill:#000000;fill-opacity:1;stroke-width:0.590325"
|
||||||
inkscape:label="plant.fineoffset_wh51_0ce593_1" />
|
inkscape:label="plant.hasta_soil_sensor_1" />
|
||||||
<path
|
<path
|
||||||
d="m 397.21638,-17795 a 5.3129802,5.3128667 0 0 0 5.31011,5.098 c 0,-2.832 -2.38019,-5.098 -5.31011,-5.098 m 5.31011,-4.536 a 1.4758282,1.4757966 0 0 1 1.47351,1.698 1.4758282,1.4757966 0 0 1 -1.47351,1.705 1.4758282,1.4757966 0 0 1 -1.47344,-1.705 1.4758282,1.4757966 0 0 1 1.47344,-1.698 m -3.77996,2.836 a 1.4758282,1.4757966 0 0 0 1.47913,1.7 c 0.33986,0 0.6007,0 0.82739,0 0,0 0,0 0,0 a 1.4758282,1.4757966 0 0 0 1.47344,1.7 1.4758282,1.4757966 0 0 0 1.47351,-1.7 c 0,0 0,0 0,0 0.22659,0 0.50981,0 0.82739,0 0.81607,0 1.47346,-0.567 1.47346,-1.7 0,-0.571 -0.33986,-1.138 -0.84438,-1.138 0.50981,0 0.84438,-0.566 0.84438,-1.133 0,-0.565 -0.66306,-1.698 -1.47346,-1.698 -0.33986,0 -0.6007,0 -0.82739,0 0,0 0,0 0,0 a 1.4758282,1.4757966 0 0 0 -1.47351,-1.7 1.4758282,1.4757966 0 0 0 -1.47344,1.7 c 0,0 0,0 0,0 -0.22658,0 -0.50981,0 -0.82739,0 a 1.4758282,1.4757966 0 0 0 -1.47913,1.698 c 0,0.567 0.33987,1.133 0.84439,1.133 -0.50981,0 -0.84439,0.567 -0.84439,1.138 m 3.77996,6.911 a 5.3129802,5.3128667 0 0 0 5.31018,-5.098 c -2.95257,0 -5.31018,2.267 -5.31018,5.098 z"
|
d="m 397.21638,-17795 a 5.3129802,5.3128667 0 0 0 5.31011,5.098 c 0,-2.832 -2.38019,-5.098 -5.31011,-5.098 m 5.31011,-4.536 a 1.4758282,1.4757966 0 0 1 1.47351,1.698 1.4758282,1.4757966 0 0 1 -1.47351,1.705 1.4758282,1.4757966 0 0 1 -1.47344,-1.705 1.4758282,1.4757966 0 0 1 1.47344,-1.698 m -3.77996,2.836 a 1.4758282,1.4757966 0 0 0 1.47913,1.7 c 0.33986,0 0.6007,0 0.82739,0 0,0 0,0 0,0 a 1.4758282,1.4757966 0 0 0 1.47344,1.7 1.4758282,1.4757966 0 0 0 1.47351,-1.7 c 0,0 0,0 0,0 0.22659,0 0.50981,0 0.82739,0 0.81607,0 1.47346,-0.567 1.47346,-1.7 0,-0.571 -0.33986,-1.138 -0.84438,-1.138 0.50981,0 0.84438,-0.566 0.84438,-1.133 0,-0.565 -0.66306,-1.698 -1.47346,-1.698 -0.33986,0 -0.6007,0 -0.82739,0 0,0 0,0 0,0 a 1.4758282,1.4757966 0 0 0 -1.47351,-1.7 1.4758282,1.4757966 0 0 0 -1.47344,1.7 c 0,0 0,0 0,0 -0.22658,0 -0.50981,0 -0.82739,0 a 1.4758282,1.4757966 0 0 0 -1.47913,1.698 c 0,0.567 0.33987,1.133 0.84439,1.133 -0.50981,0 -0.84439,0.567 -0.84439,1.138 m 3.77996,6.911 a 5.3129802,5.3128667 0 0 0 5.31018,-5.098 c -2.95257,0 -5.31018,2.267 -5.31018,5.098 z"
|
||||||
id="plant.fineoffset_wh51_0ce593_2"
|
id="plant.hasta_soil_sensor_2"
|
||||||
style="fill:#000000;fill-opacity:1;stroke-width:0.590325"
|
style="fill:#000000;fill-opacity:1;stroke-width:0.590325"
|
||||||
inkscape:label="plant.fineoffset_wh51_0ce593_2" />
|
inkscape:label="plant.hasta_soil_sensor_2" />
|
||||||
</g>
|
</g>
|
||||||
<path
|
<path
|
||||||
d="m 195.2164,-17415 a 5.3129802,5.3128667 0 0 0 5.3101,5.098 c 0,-2.832 -2.3802,-5.098 -5.3101,-5.098 m 5.3101,-4.536 a 1.4758282,1.4757966 0 0 1 1.4735,1.698 1.4758282,1.4757966 0 0 1 -1.4735,1.705 1.4758282,1.4757966 0 0 1 -1.4734,-1.705 1.4758282,1.4757966 0 0 1 1.4734,-1.698 m -3.7799,2.836 a 1.4758282,1.4757966 0 0 0 1.4791,1.7 c 0.3399,0 0.6007,0 0.8274,0 0,0 0,0 0,0 a 1.4758282,1.4757966 0 0 0 1.4734,1.7 1.4758282,1.4757966 0 0 0 1.4735,-1.7 c 0,0 0,0 0,0 0.2266,0 0.5098,0 0.8274,0 0.8161,0 1.4735,-0.567 1.4735,-1.7 0,-0.571 -0.3399,-1.138 -0.8444,-1.138 0.5098,0 0.8444,-0.566 0.8444,-1.133 0,-0.565 -0.6631,-1.698 -1.4735,-1.698 -0.3398,0 -0.6007,0 -0.8274,0 0,0 0,0 0,0 a 1.4758282,1.4757966 0 0 0 -1.4735,-1.7 1.4758282,1.4757966 0 0 0 -1.4734,1.7 c 0,0 0,0 0,0 -0.2266,0 -0.5098,0 -0.8274,0 a 1.4758282,1.4757966 0 0 0 -1.4791,1.698 c 0,0.567 0.3398,1.133 0.8444,1.133 -0.5099,0 -0.8444,0.567 -0.8444,1.138 m 3.7799,6.911 a 5.3129802,5.3128667 0 0 0 5.3102,-5.098 c -2.9526,0 -5.3102,2.267 -5.3102,5.098 z"
|
d="m 195.2164,-17415 a 5.3129802,5.3128667 0 0 0 5.3101,5.098 c 0,-2.832 -2.3802,-5.098 -5.3101,-5.098 m 5.3101,-4.536 a 1.4758282,1.4757966 0 0 1 1.4735,1.698 1.4758282,1.4757966 0 0 1 -1.4735,1.705 1.4758282,1.4757966 0 0 1 -1.4734,-1.705 1.4758282,1.4757966 0 0 1 1.4734,-1.698 m -3.7799,2.836 a 1.4758282,1.4757966 0 0 0 1.4791,1.7 c 0.3399,0 0.6007,0 0.8274,0 0,0 0,0 0,0 a 1.4758282,1.4757966 0 0 0 1.4734,1.7 1.4758282,1.4757966 0 0 0 1.4735,-1.7 c 0,0 0,0 0,0 0.2266,0 0.5098,0 0.8274,0 0.8161,0 1.4735,-0.567 1.4735,-1.7 0,-0.571 -0.3399,-1.138 -0.8444,-1.138 0.5098,0 0.8444,-0.566 0.8444,-1.133 0,-0.565 -0.6631,-1.698 -1.4735,-1.698 -0.3398,0 -0.6007,0 -0.8274,0 0,0 0,0 0,0 a 1.4758282,1.4757966 0 0 0 -1.4735,-1.7 1.4758282,1.4757966 0 0 0 -1.4734,1.7 c 0,0 0,0 0,0 -0.2266,0 -0.5098,0 -0.8274,0 a 1.4758282,1.4757966 0 0 0 -1.4791,1.698 c 0,0.567 0.3398,1.133 0.8444,1.133 -0.5099,0 -0.8444,0.567 -0.8444,1.138 m 3.7799,6.911 a 5.3129802,5.3128667 0 0 0 5.3102,-5.098 c -2.9526,0 -5.3102,2.267 -5.3102,5.098 z"
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 519 KiB After Width: | Height: | Size: 519 KiB |
Reference in New Issue
Block a user