From f9701c759d909029499af2dc70a5efb8aedaaea6 Mon Sep 17 00:00:00 2001 From: void Date: Sat, 22 Mar 2025 04:07:26 +0000 Subject: [PATCH] Update clock.yaml/clock.yaml added weather logic from watch project --- clock.yaml/clock.yaml | 36 +++++++++++++++++++++++++++++------- 1 file changed, 29 insertions(+), 7 deletions(-) diff --git a/clock.yaml/clock.yaml b/clock.yaml/clock.yaml index 2401f6b..e1c918f 100644 --- a/clock.yaml/clock.yaml +++ b/clock.yaml/clock.yaml @@ -49,7 +49,7 @@ light: font: - file: "gfonts://Orbitron" id: dspfont - size: 69 + size: 75 - file: "gfonts://Orbitron" id: dspfont_small @@ -78,6 +78,21 @@ switch: id: air_purifier_outlet1 entity_id: switch.air_purifier_outlet1 +sensor: + - platform: homeassistant + id: temperature + entity_id: weather.home + attribute: temperature + internal: true + +# Text sensors for weather and location information +text_sensor: + # Current weather condition from Home Assistant + - platform: homeassistant + id: weather_condition + entity_id: weather.home # The entity_id for weather condition + internal: true + display: - platform: st7789v model: "Custom" @@ -101,11 +116,18 @@ display: it.strftime(0, 80, id(dspfont), text_color, TextAlign::BASELINE_LEFT, "%l:%M", id(esptime).now()); // Display the date in abbreviated weekday, MM/DD format (no year) - it.strftime(0, 140, id(dspfont_medium), text_color, TextAlign::BASELINE, "%a %m/%d", id(esptime).now()); - - // Display "Party mode: ON" or "No fun allowed" + it.strftime(0, 130, id(dspfont_medium), text_color, TextAlign::BASELINE, "%a %m/%d", id(esptime).now()); + + // Display current weather condition with text_color + it.print(0, 140, id(dspfont_small), text_color, id(weather_condition).state.c_str()); + + // Display current temperature under the weather condition with text_color + String temp_str = "Temp: " + String(id(temperature).state) + " °F"; // Create the temperature string + it.print(0, 170, id(dspfont_small), text_color, temp_str.c_str()); // Convert the String to a const char* and display it + + // Display "Party mode: ON" or "No fun allowed" with text_color if (id(air_purifier_outlet1).state) { - it.printf(0, 230, id(dspfont_small), text_color, TextAlign::BASELINE_LEFT, "Party mode: ON"); + it.printf(0, 230, id(dspfont_small), text_color, TextAlign::BASELINE_LEFT, "Party mode: ON"); } else { - it.printf(0, 230, id(dspfont_small), text_color, TextAlign::BASELINE_LEFT, "No fun allowed"); - } \ No newline at end of file + it.printf(0, 230, id(dspfont_small), text_color, TextAlign::BASELINE_LEFT, "No fun allowed"); + }