You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
EspHoMaTriXv2/copy2esphome/EHMTX_easy_show.yaml

95 lines
2.4 KiB

blueprint:
name: |-
ehmtxv2: Show screen elements on 8x32 RGB-matrix
description: Add a gauge, indicator or alarm element to your EspHoMaTriXv2 display
domain: automation
input:
ehmtx_device:
name: Which device to display at?
selector:
device:
integration: esphome
trigger_sensor:
name: Which state-change triggers the screen element
selector:
entity:
domain: sensor
element:
name: The screen element
description: |-
Indicator and alarm are in the corners at the right size and have a color and a size. The gauge has a color and a value in percent.
selector:
select:
custom_value: true
mode: dropdown
options:
- label: alarm
value: show_alarm
- label: gauge
value: show_gauge
- label: indicator
value: show_indicator
default: show_indicator
gauge_value:
name: The value on the gauge (if selected)
selector:
number:
mode: slider
min: 0
max: 100
default: 50
size_value:
name: The size of the alarm or indicator (if selected)
selector:
number:
mode: slider
min: 1
max: 3
default: 2
element_color:
name: The color for the element
selector:
color_rgb:
default: [240, 40, 40]
variables:
display: !input ehmtx_device
element_color: !input element_color
myservice: !input element
value: !input gauge_value
size: !input size_value
mode: parallel
trigger:
- platform: state
entity_id: !input trigger_sensor
action:
- if:
- condition: template
value_template: |-
{{ myservice != "show_gauge" }}
then:
- service: |-
esphome.{{ device_attr(display, "name") }}_{{ myservice }}
data:
r: |-
{{ element_color[0] }}
g: |-
{{ element_color[1] }}
b: |-
{{ element_color[2] }}
size: |-
{{ size }}
else:
- service: |-
esphome.{{ device_attr(display, "name") }}_{{ myservice }}
data:
r: |-
{{ element_color[0] }}
g: |-
{{ element_color[1] }}
b: |-
{{ element_color[2] }}
percent: |-
{{ value }}