Refactor YAML file and update sensor IDs

This commit is contained in:
2026-06-23 13:43:50 +02:00
parent b22c86e95b
commit e7466ccc6a
+454 -98
View File
@@ -78,7 +78,7 @@ binary_sensor:
then: then:
- logger.log: - logger.log:
level: INFO level: INFO
format: 'Button doubleclick, rendering next page!' format: "Button doubleclick, rendering next page!"
- display.page.show_next: epaper - display.page.show_next: epaper
- component.update: epaper - component.update: epaper
- timing: - timing:
@@ -87,7 +87,7 @@ binary_sensor:
then: then:
- logger.log: - logger.log:
level: INFO level: INFO
format: 'Button click, refreshing screen!' format: "Button click, refreshing screen!"
- component.update: epaper - component.update: epaper
# HA pushbutton configuration # HA pushbutton configuration
@@ -99,7 +99,7 @@ button:
on_press: on_press:
- logger.log: - logger.log:
level: INFO level: INFO
format: 'HA Button click, refreshing screen!' format: "HA Button click, refreshing screen!"
- component.update: epaper - component.update: epaper
- platform: template - platform: template
name: Next screen name: Next screen
@@ -108,7 +108,7 @@ button:
on_press: on_press:
- logger.log: - logger.log:
level: INFO level: INFO
format: 'HA Button click, rendering next page!' format: "HA Button click, rendering next page!"
- display.page.show_next: epaper - display.page.show_next: epaper
- component.update: epaper - component.update: epaper
@@ -119,10 +119,6 @@ sensor:
id: wifisignal id: wifisignal
update_interval: 60s update_interval: 60s
- platform: homeassistant
entity_id: sensor.livingroom_wohnzimmer_feinstaub_pm_2_5_m
id: pm25_livingroom
- platform: homeassistant - platform: homeassistant
entity_id: sensor.wohnzimmer_temperatur entity_id: sensor.wohnzimmer_temperatur
id: temp_livingroom id: temp_livingroom
@@ -136,8 +132,8 @@ sensor:
id: co2_livingroom id: co2_livingroom
- platform: homeassistant - platform: homeassistant
entity_id: sensor.alpstuga_air_quality_monitor_pm25_2 entity_id: sensor.livingroom_wohnzimmer_feinstaub_pm_2_5_m
id: pm25_sleepingroom id: pm25_livingroom
- platform: homeassistant - platform: homeassistant
entity_id: sensor.alpstuga_air_quality_monitor_temperatur_2 entity_id: sensor.alpstuga_air_quality_monitor_temperatur_2
@@ -151,6 +147,26 @@ sensor:
entity_id: sensor.alpstuga_air_quality_monitor_kohlendioxid_2 entity_id: sensor.alpstuga_air_quality_monitor_kohlendioxid_2
id: co2_sleepingroom id: co2_sleepingroom
- platform: homeassistant
entity_id: sensor.alpstuga_air_quality_monitor_pm25_2
id: pm25_sleepingroom
- platform: homeassistant
entity_id: sensor.alpstuga_air_quality_monitor_temperatur
id: temp_childrensroom
- platform: homeassistant
entity_id: sensor.alpstuga_air_quality_monitor_luftfeuchtigkeit
id: humid_childrensroom
- platform: homeassistant
entity_id: sensor.alpstuga_air_quality_monitor_kohlendioxid
id: co2_childrensroom
- platform: homeassistant
entity_id: sensor.alpstuga_air_quality_monitor_pm25
id: pm25_childrensroom
- platform: homeassistant - platform: homeassistant
entity_id: sensor.aussentemperatur entity_id: sensor.aussentemperatur
id: temp_outdoor id: temp_outdoor
@@ -250,7 +266,7 @@ time:
then: then:
- logger.log: - logger.log:
level: INFO level: INFO
format: 'Power button press' format: "Power button press"
- output.turn_on: power_key - output.turn_on: power_key
- delay: 0.5s - delay: 0.5s
- output.turn_off: power_key - output.turn_off: power_key
@@ -260,129 +276,461 @@ time:
then: then:
- logger.log: - logger.log:
level: INFO level: INFO
format: 'Timer based screen refresh' format: "Timer based screen refresh"
- component.update: epaper - component.update: epaper
# Font definitions # Font definitions
font: font:
- file: 'fonts/Roboto-Medium.ttf' - file: "fonts/Roboto-Medium.ttf"
id: roboto_med_30 id: roboto_med_30
size: 30 size: 30
- file: 'fonts/Roboto-Regular.ttf' - file: "fonts/Roboto-Regular.ttf"
id: footer_font id: footer_font
size: 15 size: 15
glyphs: glyphs:
['&', '@', '!', ',', '.', '"', '%', '(', ')', '+', '-', '_', ':', '°', [
'1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', "&",
'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', "@",
'T', 'U', 'V', 'W', 'X', 'Y', 'Z', ' ', 'a', 'b', 'c', 'd', 'e', 'f', "!",
'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', ",",
'u', 'v', 'w', 'x', 'y', 'z', 'Ä', 'ä', 'ö', '/', 'º', 'µ', '³', 'ß', ".",
'Ü', 'ü', 'Ö', '0'] '"',
"%",
"(",
")",
"+",
"-",
"_",
":",
"°",
"1",
"2",
"3",
"4",
"5",
"6",
"7",
"8",
"9",
"A",
"B",
"C",
"D",
"E",
"F",
"G",
"H",
"I",
"J",
"K",
"L",
"M",
"N",
"O",
"P",
"Q",
"R",
"S",
"T",
"U",
"V",
"W",
"X",
"Y",
"Z",
" ",
"a",
"b",
"c",
"d",
"e",
"f",
"g",
"h",
"i",
"j",
"k",
"l",
"m",
"n",
"o",
"p",
"q",
"r",
"s",
"t",
"u",
"v",
"w",
"x",
"y",
"z",
"Ä",
"ä",
"ö",
"/",
"º",
"µ",
"³",
"ß",
"Ü",
"ü",
"Ö",
"0",
]
- file: 'fonts/Roboto-Regular.ttf' - file: "fonts/Roboto-Regular.ttf"
id: sensor_unit id: sensor_unit
size: 20 size: 20
glyphs: glyphs:
['&', '@', '!', ',', '.', '"', '%', '(', ')', '+', '-', '_', ':', '°', [
'1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', "&",
'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', "@",
'T', 'U', 'V', 'W', 'X', 'Y', 'Z', ' ', 'a', 'b', 'c', 'd', 'e', 'f', "!",
'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', ",",
'u', 'v', 'w', 'x', 'y', 'z', 'Ä', 'ä', 'ö', '/', 'º', 'µ', '³', 'ß', ".",
'Ü', 'ü', 'Ö', '0'] '"',
"%",
"(",
")",
"+",
"-",
"_",
":",
"°",
"1",
"2",
"3",
"4",
"5",
"6",
"7",
"8",
"9",
"A",
"B",
"C",
"D",
"E",
"F",
"G",
"H",
"I",
"J",
"K",
"L",
"M",
"N",
"O",
"P",
"Q",
"R",
"S",
"T",
"U",
"V",
"W",
"X",
"Y",
"Z",
" ",
"a",
"b",
"c",
"d",
"e",
"f",
"g",
"h",
"i",
"j",
"k",
"l",
"m",
"n",
"o",
"p",
"q",
"r",
"s",
"t",
"u",
"v",
"w",
"x",
"y",
"z",
"Ä",
"ä",
"ö",
"/",
"º",
"µ",
"³",
"ß",
"Ü",
"ü",
"Ö",
"0",
]
- file: 'fonts/Roboto-Medium.ttf' - file: "fonts/Roboto-Medium.ttf"
id: sub_sensor_font id: sub_sensor_font
size: 30 size: 30
glyphs: glyphs:
['&', '@', '!', ',', '.', '"', '%', '(', ')', '+', '-', '_', ':', '°', [
'1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', "&",
'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', "@",
'T', 'U', 'V', 'W', 'X', 'Y', 'Z', ' ', 'a', 'b', 'c', 'd', 'e', 'f', "!",
'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', ",",
'u', 'v', 'w', 'x', 'y', 'z', 'Ä', 'ä', 'ö', '/', 'º', 'µ', '³', 'ß', ".",
'Ü', 'ü', 'Ö', '0'] '"',
"%",
"(",
")",
"+",
"-",
"_",
":",
"°",
"1",
"2",
"3",
"4",
"5",
"6",
"7",
"8",
"9",
"A",
"B",
"C",
"D",
"E",
"F",
"G",
"H",
"I",
"J",
"K",
"L",
"M",
"N",
"O",
"P",
"Q",
"R",
"S",
"T",
"U",
"V",
"W",
"X",
"Y",
"Z",
" ",
"a",
"b",
"c",
"d",
"e",
"f",
"g",
"h",
"i",
"j",
"k",
"l",
"m",
"n",
"o",
"p",
"q",
"r",
"s",
"t",
"u",
"v",
"w",
"x",
"y",
"z",
"Ä",
"ä",
"ö",
"/",
"º",
"µ",
"³",
"ß",
"Ü",
"ü",
"Ö",
"0",
]
- file: 'fonts/Roboto-Bold.ttf' - file: "fonts/Roboto-Bold.ttf"
id: big_sensor_font id: big_sensor_font
size: 50 size: 50
glyphs: glyphs:
['&', '@', '!', ',', '.', '"', '%', '(', ')', '+', '-', '_', ':', '°', [
'1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', "&",
'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', "@",
'T', 'U', 'V', 'W', 'X', 'Y', 'Z', ' ', 'a', 'b', 'c', 'd', 'e', 'f', "!",
'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', ",",
'u', 'v', 'w', 'x', 'y', 'z', 'Ä', 'ä', 'ö', '/', 'º', 'µ', '³', 'ß', ".",
'Ü', 'ü', 'Ö', '0'] '"',
"%",
"(",
")",
"+",
"-",
"_",
":",
"°",
"1",
"2",
"3",
"4",
"5",
"6",
"7",
"8",
"9",
"A",
"B",
"C",
"D",
"E",
"F",
"G",
"H",
"I",
"J",
"K",
"L",
"M",
"N",
"O",
"P",
"Q",
"R",
"S",
"T",
"U",
"V",
"W",
"X",
"Y",
"Z",
" ",
"a",
"b",
"c",
"d",
"e",
"f",
"g",
"h",
"i",
"j",
"k",
"l",
"m",
"n",
"o",
"p",
"q",
"r",
"s",
"t",
"u",
"v",
"w",
"x",
"y",
"z",
"Ä",
"ä",
"ö",
"/",
"º",
"µ",
"³",
"ß",
"Ü",
"ü",
"Ö",
"0",
]
- file: 'fonts/materialdesignicons-webfont.ttf' - file: "fonts/materialdesignicons-webfont.ttf"
id: mdi_small id: mdi_small
size: 31 size: 31
glyphs: [ glyphs: [
'󰔏', # mdi-thermometer "󰔏", # mdi-thermometer
'󰖎', # mdi-water-percent "󰖎", # mdi-water-percent
'󰮬', # mdi-molecule (pm2.5) "󰮬", # mdi-molecule (pm2.5)
'󰟤', # mdi-co2 "󰟤", # mdi-co2
'󰊚', # mdi-gauge (air pressure) "󰊚", # mdi-gauge (air pressure)
'󰖙', # mdi-weather-sunny "󰖙", # mdi-weather-sunny
'󰖛', # mdi-weather-sunset-down "󰖛", # mdi-weather-sunset-down
'󰖜', # mdi-weather-sunset-up "󰖜", # mdi-weather-sunset-up
'󱐋', # mdi-lightning-bolt "󱐋", # mdi-lightning-bolt
'󰴾', # mdi-transmission-tower "󰴾", # mdi-transmission-tower
'󰚥', # mdi-power-plug "󰚥", # mdi-power-plug
'󱈹', # mdi-desk "󱈹", # mdi-desk
'󰔂', # mdi-television "󰔂", # mdi-television
'󰐼' # mdi-radiation "󰐼", # mdi-radiation
] ]
- file: 'fonts/materialdesignicons-webfont.ttf' - file: "fonts/materialdesignicons-webfont.ttf"
id: mdi_weather id: mdi_weather
size: 80 size: 80
glyphs: [ glyphs: [
'󰽡', # mdi-moon-first-quarter "󰽡", # mdi-moon-first-quarter
'󰽢', # mdi-moon-full "󰽢", # mdi-moon-full
'󰽣', # mdi-moon-last-quarter "󰽣", # mdi-moon-last-quarter
'󰽤', # mdi-moon-new "󰽤", # mdi-moon-new
'󰽥', # mdi-moon-waning-crescent "󰽥", # mdi-moon-waning-crescent
'󰽦', # mdi-moon-waning-gibbous "󰽦", # mdi-moon-waning-gibbous
'󰽧', # mdi-moon-waxing-crescent "󰽧", # mdi-moon-waxing-crescent
'󰽨', # mdi-moon-waxing-gibbous "󰽨", # mdi-moon-waxing-gibbous
'󰖔', # mdi-weather-night "󰖔", # mdi-weather-night
'󰖐', # mdi-weather-cloudy "󰖐", # mdi-weather-cloudy
'󰖑', # mdi-weather-fog "󰖑", # mdi-weather-fog
'󰖒', # mdi-weather-hail "󰖒", # mdi-weather-hail
'󰖓', # mdi-weather-lightning "󰖓", # mdi-weather-lightning
'󰙾', # mdi-weather-lightning-rainy "󰙾", # mdi-weather-lightning-rainy
'󰖕', # mdi-weather-partly-cloudy "󰖕", # mdi-weather-partly-cloudy
'󰖖', # mdi-weather-pouring "󰖖", # mdi-weather-pouring
'󰖗', # mdi-weather-rainy "󰖗", # mdi-weather-rainy
'󰖘', # mdi-weather-snowy "󰖘", # mdi-weather-snowy
'󰙿', # mdi-weather-snowy-rainy "󰙿", # mdi-weather-snowy-rainy
'󰖙', # mdi-weather-sunny "󰖙", # mdi-weather-sunny
'󰖝', # mdi-weather-windy "󰖝", # mdi-weather-windy
'󰖞', # mdi-weather-windy-variant "󰖞", # mdi-weather-windy-variant
'󰳥' # mdi-weather-exceptional "󰳥", # mdi-weather-exceptional
] ]
- file: 'fonts/materialdesignicons-webfont.ttf' - file: "fonts/materialdesignicons-webfont.ttf"
id: mdi_wifi id: mdi_wifi
size: 20 size: 20
glyphs: [ glyphs: [
# WiFi # WiFi
'󰤫', # mdi-wifi-strength-alert-outline "󰤫", # mdi-wifi-strength-alert-outline
'󰤟', # mdi-wifi-strength-1 "󰤟", # mdi-wifi-strength-1
'󰤢', # mdi-wifi-strength-2 "󰤢", # mdi-wifi-strength-2
'󰤥', # mdi-wifi-strength-3 "󰤥", # mdi-wifi-strength-3
'󰤨' # mdi-wifi-strength-4 "󰤨", # mdi-wifi-strength-4
] ]
- file: 'fonts/materialdesignicons-webfont.ttf' - file: "fonts/materialdesignicons-webfont.ttf"
id: mdi_med id: mdi_med
size: 60 size: 60
glyphs: [ glyphs: [
'󰀦' # mdi-alert "󰀦", # mdi-alert
] ]
image: image:
@@ -409,20 +757,29 @@ display:
pages: pages:
- id: environment - id: environment
lambda: |- lambda: |-
/* Outdoor */
float outdoor_temp = id(temp_outdoor).state; float outdoor_temp = id(temp_outdoor).state;
int outdoor_humid = int(id(humid_outdoor).state); int outdoor_humid = int(id(humid_outdoor).state);
float air_pressure = id(airpressure).state; float air_pressure = id(airpressure).state;
float outdoor_radiation = id(radiation).state; float outdoor_radiation = id(radiation).state;
/* Living room */
float livingroom_temp = id(temp_livingroom).state; float livingroom_temp = id(temp_livingroom).state;
int livingroom_humid = int(id(humid_livingroom).state); int livingroom_humid = int(id(humid_livingroom).state);
int livingroom_pm25 = int(id(pm25_livingroom).state);
float livingroom_co2 = id(co2_livingroom).state; float livingroom_co2 = id(co2_livingroom).state;
int livingroom_pm25 = int(id(pm25_livingroom).state);
/* Serverroom */
float serverroom_temp = id(temp_serverroom).state;
/* Sleeping room */
float sleepingroom_temp = id(temp_sleepingroom).state; float sleepingroom_temp = id(temp_sleepingroom).state;
int sleepingroom_humid = int(id(humid_sleepingroom).state); int sleepingroom_humid = int(id(humid_sleepingroom).state);
int sleepingroom_pm25 = int(id(pm25_sleepingroom).state);
float sleepingroom_co2 = id(co2_sleepingroom).state; float sleepingroom_co2 = id(co2_sleepingroom).state;
float serverroom_temp = id(temp_serverroom).state; int sleepingroom_pm25 = int(id(pm25_sleepingroom).state);
/* Children's room */
float childrensroom_temp = id(temp_sleepingroom).state;
int childrensroom_humid = int(id(humid_sleepingroom).state);
float childrensroom_co2 = id(co2_sleepingroom).state;
int childrensroom_pm25 = int(id(pm25_sleepingroom).state);
int offsetX = 0; int offsetX = 0;
int offsetY = 0; int offsetY = 0;
@@ -474,7 +831,6 @@ display:
it.print(225, 130, id(sensor_unit), TextAlign::BASELINE_LEFT, "hPa"); it.print(225, 130, id(sensor_unit), TextAlign::BASELINE_LEFT, "hPa");
} }
/* Livingroom */ /* Livingroom */
offsetY = 127; offsetY = 127;
it.print(10, 10 + offsetY, id(sensor_unit), "Wohnzimmer"); it.print(10, 10 + offsetY, id(sensor_unit), "Wohnzimmer");
@@ -831,7 +1187,7 @@ display:
/* FOOTER */ /* FOOTER */
it.strftime(614, 380, id(footer_font), TextAlign::BASELINE_RIGHT , "Aktualisiert um %d.%m.%Y %H:%M", id(homeassistant_time).now()); it.strftime(614, 380, id(footer_font), TextAlign::BASELINE_RIGHT , "Aktualisiert um %d.%m.%Y %H:%M", id(homeassistant_time).now());
/* WiFi Signal Strenght */ /* WiFi Signal strength */
if(id(wifisignal).has_state()) { if(id(wifisignal).has_state()) {
int x = 630; int x = 630;
int y = 384; int y = 384;