blue prints

pull/2/head
LuBeDa 3 years ago
parent ff2387e214
commit 6ecd22e356

1
.gitignore vendored

@ -22,3 +22,4 @@ svganimtest.html
servicetest servicetest
.DS_Store .DS_Store
components/ehmtxv2/animation.py components/ehmtxv2/animation.py
downloadawtrixicons.ps1

@ -36,11 +36,11 @@ namespace esphome
this->date_fmt = s; this->date_fmt = s;
} }
void EHMTX::show_indicator(int r, int g, int b, int s) void EHMTX::show_indicator(int r, int g, int b, int size)
{ {
this->indicator_color = Color((uint8_t)r & 248, (uint8_t)g & 252, (uint8_t)b & 248); this->indicator_color = Color((uint8_t)r & 248, (uint8_t)g & 252, (uint8_t)b & 248);
this->display_indicator = s; this->display_indicator = size;
ESP_LOGD(TAG, "show indicator size:%d r: %d g: %d b: %d", s, r, g, b); ESP_LOGD(TAG, "show indicator size: %d r: %d g: %d b: %d", size, r, g, b);
} }
void EHMTX::hide_indicator() void EHMTX::hide_indicator()
@ -157,8 +157,8 @@ namespace esphome
register_service(&EHMTX::hide_gauge, "hide_gauge"); register_service(&EHMTX::hide_gauge, "hide_gauge");
register_service(&EHMTX::hide_alarm, "hide_alarm"); register_service(&EHMTX::hide_alarm, "hide_alarm");
register_service(&EHMTX::show_gauge, "show_gauge", {"percent", "r", "g", "b"}); register_service(&EHMTX::show_gauge, "show_gauge", {"percent", "r", "g", "b"});
register_service(&EHMTX::show_alarm, "show_alarm", {"r", "g", "b", "s"}); register_service(&EHMTX::show_alarm, "show_alarm", {"r", "g", "b", "size"});
register_service(&EHMTX::show_indicator, "show_indicator", {"r", "g", "b", "s"}); register_service(&EHMTX::show_indicator, "show_indicator", {"r", "g", "b", "size"});
register_service(&EHMTX::set_clock_color, "clock_color", {"r", "g", "b"}); register_service(&EHMTX::set_clock_color, "clock_color", {"r", "g", "b"});
register_service(&EHMTX::set_today_color, "today_color", {"r", "g", "b"}); register_service(&EHMTX::set_today_color, "today_color", {"r", "g", "b"});
@ -181,11 +181,11 @@ namespace esphome
ESP_LOGD(TAG, "Setup and running!"); ESP_LOGD(TAG, "Setup and running!");
} }
void EHMTX::show_alarm(int r, int g, int b, int s) void EHMTX::show_alarm(int r, int g, int b, int size)
{ {
this->alarm_color = Color((uint8_t)r & 248, (uint8_t)g & 252, (uint8_t)b & 248); this->alarm_color = Color((uint8_t)r & 248, (uint8_t)g & 252, (uint8_t)b & 248);
this->display_alarm = s; this->display_alarm = size;
ESP_LOGD(TAG, "show alarm color(%d) r: %d g: %d b: %d", s, r, g, b); ESP_LOGD(TAG, "show alarm size: %d color r: %d g: %d b: %d", size, r, g, b);
} }
void EHMTX::hide_alarm() void EHMTX::hide_alarm()

@ -38,6 +38,8 @@ blueprint:
value: "7" value: "7"
- label: MODE_RAINBOW_TEXT - label: MODE_RAINBOW_TEXT
value: "8" value: "8"
- label: MODE_RAINBOW_CLOCK
value: "9"
default: "5" default: "5"
icon_name: icon_name:
name: the icon name: the icon

@ -11,7 +11,7 @@ blueprint:
integration: esphome integration: esphome
trigger_sensor: trigger_sensor:
name: which state to show name: which state to show
description: This sensor state will be displayed description: what triggers this automation?
selector: selector:
entity: entity:
domain: sensor domain: sensor
@ -37,24 +37,46 @@ blueprint:
min: 0 min: 0
max: 100 max: 100
default: 50 default: 50
size_value:
name: size of the alarm or indicator
selector:
number:
mode: slider
min: 1
max: 3
default: 2
element_color: element_color:
name: The color for the element name: The color for the element
description: the color description: the color
selector: selector:
color_rgb: color_rgb:
default: [240, 40, 40] default: [240, 40, 40]
variables: variables:
display: !input ehmtx_device display: !input ehmtx_device
element_color: !input element_color element_color: !input element_color
myservice: !input element myservice: !input element
value: !input gauge_value value: !input gauge_value
size: !input size_value
trigger: trigger:
- platform: state - platform: state
entity_id: !input trigger_sensor entity_id: !input trigger_sensor
action: 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 }} - service: esphome.{{ device_attr(display, "name") }}_{{ myservice }}
data: data:
r: |- r: |-
@ -63,3 +85,6 @@ action:
{{ element_color[1] }} {{ element_color[1] }}
b: |- b: |-
{{ element_color[2] }} {{ element_color[2] }}
percent: |-
{{ element_color[2] }}

@ -45,6 +45,11 @@ blueprint:
options: options:
["error","home_assistant","temperature","lightbulb","music","phone","car","sleep8x32",] ["error","home_assistant","temperature","lightbulb","music","phone","car","sleep8x32",]
default: home_assistant default: home_assistant
use_friendly:
name: use the triggers friendly name in display
selector:
boolean:
default: true
default_font: default_font:
name: true uses the default, false the special font name: true uses the default, false the special font
selector: selector:
@ -54,7 +59,7 @@ blueprint:
name: Use colors based on state values name: Use colors based on state values
selector: selector:
boolean: boolean:
default: true default: false
low_value: low_value:
name: below this vaule is a special color name: below this vaule is a special color
selector: selector:
@ -87,6 +92,7 @@ blueprint:
variables: variables:
display: !input ehmtx_device display: !input ehmtx_device
bfriendly: !input use_friendly
def_color: !input default_color def_color: !input default_color
lo_color: !input low_color lo_color: !input low_color
hi_color: !input high_color hi_color: !input high_color
@ -105,7 +111,12 @@ action:
icon_name: !input icon_name icon_name: !input icon_name
screen_time: !input screen_time screen_time: !input screen_time
lifetime: !input lifetime lifetime: !input lifetime
text: "{{trigger.to_state.attributes.friendly_name}}: {{trigger.to_state.state}} {{trigger.to_state.attributes.unit_of_measurement}}" text: |-
{% if bfriendly %}
{{trigger.to_state.attributes.friendly_name}}: {{trigger.to_state.state}} {{trigger.to_state.attributes.unit_of_measurement}}
{% else %}
{{trigger.to_state.state}} {{trigger.to_state.attributes.unit_of_measurement}}
{% endif %}
default_font: !input default_font default_font: !input default_font
r: |- r: |-
{{ def_color[0] }} {{ def_color[0] }}

@ -61,25 +61,9 @@ binary_sensor:
name: "Right button" name: "Right button"
logger: logger:
level: DEBUG level: WARN
api: api:
services:
- service: alarm
variables:
icon_name: string
text: string
then:
lambda: |-
id(rgb8x32)->icon_screen(icon_name,text, 5, 30, true, 200, 50, 50);
id(rgb8x32)->force_screen(icon_name);
- service: screen
variables:
icon_name: string
text: string
then:
lambda: |-
id(rgb8x32)->icon_screen(icon_name,text);
- service: tune - service: tune
variables: variables:
tune: string tune: string
@ -204,7 +188,7 @@ display:
id(rgb8x32)->tick(); id(rgb8x32)->tick();
id(rgb8x32)->draw(); id(rgb8x32)->draw();
ehmtx: ehmtxv2:
id: rgb8x32 id: rgb8x32
clock_time: 10 clock_time: 10
screen_time: 10 screen_time: 10
@ -235,6 +219,8 @@ ehmtx:
lameid: 2819 lameid: 2819
- id: sleep8x32 - id: sleep8x32
url: https://user-images.githubusercontent.com/16407309/224850723-634c9b2d-55d9-44f2-9f93-765c0485b090.gif url: https://user-images.githubusercontent.com/16407309/224850723-634c9b2d-55d9-44f2-9f93-765c0485b090.gif
- id: sleep8x32
url: https://user-images.githubusercontent.com/16407309/224850723-634c9b2d-55d9-44f2-9f93-765c0485b090.gif
on_next_screen: on_next_screen:
- homeassistant.event: - homeassistant.event:
event: ehmtxv2.new_screen event: ehmtxv2.new_screen

Loading…
Cancel
Save