Edit esp-bedside-panel.yaml

This commit is contained in:
ESPHome Device Builder
2026-07-16 20:26:16 +12:00
parent cf857f322f
commit 20a40b2b3f
+18 -37
View File
@@ -6,9 +6,10 @@
# https://home.fox.co.nz/gitea/zorruno/zorruno-homeassistant/src/branch/master/esphome/esp-bedside-panel.yaml # https://home.fox.co.nz/gitea/zorruno/zorruno-homeassistant/src/branch/master/esphome/esp-bedside-panel.yaml
#:########################################################################################:# #:########################################################################################:#
# VERSIONS: # VERSIONS:
# V0.8p 2026-07-16 Changed the Heat Pump high-output profile name from Boost to Boost
# V0.8o 2026-07-16 Added reliable MDI setpoint arrows and optimistic mutually-exclusive Heat Pump profiles # V0.8o 2026-07-16 Added reliable MDI setpoint arrows and optimistic mutually-exclusive Heat Pump profiles
# V0.8n 2026-07-16 Fixed setpoint arrow icons using LVGL built-in FontAwesome symbols # V0.8n 2026-07-16 Fixed setpoint arrow icons using LVGL built-in FontAwesome symbols
# V0.8m 2026-07-16 Added Quiet / Powerful profiles, Night Power toggle and improved Climate state highlighting # V0.8m 2026-07-16 Added Quiet / Boost profiles, Night Power toggle and improved Climate state highlighting
# V0.8l 2026-07-16 Completed primary Climate controls, ceiling fan cycle and Air Filter Low # V0.8l 2026-07-16 Completed primary Climate controls, ceiling fan cycle and Air Filter Low
# V0.8k 2026-07-16 Revised Bedroom header and added five-button navigation row # V0.8k 2026-07-16 Revised Bedroom header and added five-button navigation row
# V0.8j 2026-07-16 Added delayed Home Assistant state synchronisation for button highlighting at startup # V0.8j 2026-07-16 Added delayed Home Assistant state synchronisation for button highlighting at startup
@@ -83,12 +84,12 @@ substitutions:
# Device Naming # Device Naming
device_name: "esp-bedside-panel" device_name: "esp-bedside-panel"
friendly_name: "ESP Bedside Panel" friendly_name: "ESP Bedside Panel"
description_comment: "Guition JC1060P470C_I_W_Y ESP32-P4 bedside control panel. Reliable setpoint icons and optimistic Quiet / Powerful / None profile controls. (Layout V1.1)" description_comment: "Guition JC1060P470C_I_W_Y ESP32-P4 bedside control panel. Reliable setpoint icons and optimistic Quiet / Boost / None profile controls. (Layout V1.1)"
device_area: "Bedroom" device_area: "Bedroom"
# Project Naming # Project Naming
project_name: "Guition.JC1060P470C_I_W_Y" project_name: "Guition.JC1060P470C_I_W_Y"
project_version: "v0.8o" project_version: "v0.8p"
# Passwords & Secrets # Passwords & Secrets
api_key: !secret esp-api_key api_key: !secret esp-api_key
@@ -739,7 +740,7 @@ binary_sensor:
# Local optimistic Heat Pump profile state # Local optimistic Heat Pump profile state
#:########################################################################################:# #:########################################################################################:#
globals: globals:
# -1 = follow HA, 0 = None, 1 = Quiet, 2 = Powerful / Boost. # -1 = follow HA, 0 = None, 1 = Quiet, 2 = Boost / Boost.
- id: climate_profile_optimistic - id: climate_profile_optimistic
type: int type: int
restore_value: false restore_value: false
@@ -965,7 +966,7 @@ script:
? lv_color_hex(0x32677F) ? lv_color_hex(0x32677F)
: lv_color_hex(0x28313D); : lv_color_hex(0x28313D);
# Quiet / Powerful are mutually exclusive. While a button action is # Quiet / Boost are mutually exclusive. While a button action is
# pending, the optimistic local value is shown immediately. Otherwise, # pending, the optimistic local value is shown immediately. Otherwise,
# the HA profile helper is authoritative, with actual preset as fallback. # the HA profile helper is authoritative, with actual preset as fallback.
- lvgl.widget.update: - lvgl.widget.update:
@@ -981,18 +982,14 @@ script:
selected = 1; selected = 1;
} else if ( } else if (
profile == "Boost" || profile == "Boost" ||
profile == "boost" || profile == "boost"
profile == "Powerful" ||
profile == "powerful"
) { ) {
selected = 2; selected = 2;
} else if (preset == "quiet" || preset == "Quiet") { } else if (preset == "quiet" || preset == "Quiet") {
selected = 1; selected = 1;
} else if ( } else if (
preset == "boost" || preset == "boost" ||
preset == "Boost" || preset == "Boost"
preset == "powerful" ||
preset == "Powerful"
) { ) {
selected = 2; selected = 2;
} else { } else {
@@ -1005,7 +1002,7 @@ script:
: lv_color_hex(0x28313D); : lv_color_hex(0x28313D);
- lvgl.widget.update: - lvgl.widget.update:
id: climate_powerful_button id: climate_boost_button
bg_color: !lambda |- bg_color: !lambda |-
int selected = id(climate_profile_optimistic); int selected = id(climate_profile_optimistic);
@@ -1017,18 +1014,14 @@ script:
selected = 1; selected = 1;
} else if ( } else if (
profile == "Boost" || profile == "Boost" ||
profile == "boost" || profile == "boost"
profile == "Powerful" ||
profile == "powerful"
) { ) {
selected = 2; selected = 2;
} else if (preset == "quiet" || preset == "Quiet") { } else if (preset == "quiet" || preset == "Quiet") {
selected = 1; selected = 1;
} else if ( } else if (
preset == "boost" || preset == "boost" ||
preset == "Boost" || preset == "Boost"
preset == "powerful" ||
preset == "Powerful"
) { ) {
selected = 2; selected = 2;
} else { } else {
@@ -1127,18 +1120,14 @@ script:
current = 1; current = 1;
} else if ( } else if (
profile == "Boost" || profile == "Boost" ||
profile == "boost" || profile == "boost"
profile == "Powerful" ||
profile == "powerful"
) { ) {
current = 2; current = 2;
} else if (preset == "quiet" || preset == "Quiet") { } else if (preset == "quiet" || preset == "Quiet") {
current = 1; current = 1;
} else if ( } else if (
preset == "boost" || preset == "boost" ||
preset == "Boost" || preset == "Boost"
preset == "powerful" ||
preset == "Powerful"
) { ) {
current = 2; current = 2;
} }
@@ -1972,12 +1961,8 @@ lvgl:
} else if ( } else if (
profile == "Boost" || profile == "Boost" ||
profile == "boost" || profile == "boost" ||
profile == "Powerful" ||
profile == "powerful" ||
preset == "Boost" || preset == "Boost" ||
preset == "boost" || preset == "boost"
preset == "Powerful" ||
preset == "powerful"
) { ) {
selected = 2; selected = 2;
} else { } else {
@@ -1992,7 +1977,7 @@ lvgl:
- script.execute: apply_climate_profile_target - script.execute: apply_climate_profile_target
- button: - button:
id: climate_powerful_button id: climate_boost_button
x: 205 x: 205
y: 218 y: 218
width: 170 width: 170
@@ -2007,11 +1992,11 @@ lvgl:
widgets: widgets:
- label: - label:
align: CENTER align: CENTER
text: "Powerful" text: "Boost"
text_font: font_button text_font: font_button
text_color: 0xFFFFFF text_color: 0xFFFFFF
on_click: on_click:
# Powerful -> None when already active; otherwise select Powerful. # Boost -> None when already active; otherwise select Boost.
- lambda: |- - lambda: |-
int selected = id(climate_profile_optimistic); int selected = id(climate_profile_optimistic);
@@ -2029,12 +2014,8 @@ lvgl:
} else if ( } else if (
profile == "Boost" || profile == "Boost" ||
profile == "boost" || profile == "boost" ||
profile == "Powerful" ||
profile == "powerful" ||
preset == "Boost" || preset == "Boost" ||
preset == "boost" || preset == "boost"
preset == "Powerful" ||
preset == "powerful"
) { ) {
selected = 2; selected = 2;
} else { } else {