Praxisnahe Tutorials, auf die du zählen kannst.
Einsteiger Guide für Home Assistant

Wetter-Daten & Vorhersagen ab Home Assistant 2024.3 verstehen

Bist du bereit für eine neue Ära des Wetterdaten-Managements in deinem Smart Home? Mit dem kommenden Update 2024.03 von Home Assistant ändern sich einige Dinge in der Art und Weise, wie du Zugang zu den Wettervorhersage-Daten bekommst.

Während du aktuell die Daten direkt als Attribute in der Entität deines Systems siehst, wirst du diese ab dem Update selbst anlegen müssen.

Das klingt kompliziert? Keine Sorge! In diesem Video zeige ich dir, wie du diesen neuen Weg meisterst 🙌

Inhaltsverzeichnis

Voraussetzungen

Home Assistant muss schon installiert sein, auf welcher Hardware spielt keine Rolle.

Templating in Home Assistant sowie die Grundlagen sollten ebenfalls bekannt sein, sind jedoch nicht zwingend erforderlich!

Fokus des Videos

Generell ist nochmal hervorzuheben, dass die angelegten Templates im Video nur für Automationen erforderlich sind, die anhand von Wettervorhersagen auslösen oder Bedingungen prüfen sollen.

Für die simple einrichtung von Wetterdaten in Home Assitant reicht das 1. Drittel des Videos 👍

Ressourcen / Dokus

Beispiel für Wetter-Dienstaufruf

service: weather.get_forecasts
target:
  entity_id:
    - weather.forecast_haus_elisabeth
data:
  type: daily
response_variable: weather_forecast

Meine Konfigurierten Templates aus dem Video

Solltest du bereits eine template: Sektion in deiner Configuration.yaml haben, darfst du diese natürlich nicht doppelt anlegen sondern musst den Code an die passende Stelle unterhalb von template: kopieren.

Nicht vergessen, die weather.Entitäten gegen die eigene(n) zu ersetzen 😉

template:
# Der neue Weg (forcasts mit s)
# Tägliche Wettervorhersagen
  - trigger:
      - platform: time_pattern
        hours: /1
    action:
      - service: weather.get_forecasts
        target:
          entity_id:
            - weather.forecast_haus_elisabeth
            - weather.forecast_berlin
        data:
            type: daily
        response_variable: tagesvorhersage
    sensor:
    # Hier ein Template-Sensor, der verschieden Daten der Täglichen Vorhersage als Attribute gespeichert hat
      - name: Wetter-Vorhersage des nächsten Tages
        unique_id: forecast_next_1_day
        state: "{{ now().isoformat() }}"
        icon: mdi:hours-24
        attributes:
          condition: "{{ tagesvorhersage['weather.forecast_haus_elisabeth'].forecast[1].condition }}"
          cloud_coverage: "{{ tagesvorhersage['weather.forecast_haus_elisabeth'].forecast[1].cloud_coverage }}"
          temperature: "{{ tagesvorhersage['weather.forecast_haus_elisabeth'].forecast[1].temperature }}"
          datetime: "{{ tagesvorhersage['weather.forecast_haus_elisabeth'].forecast[1].datetime }}"
      # Die gute, alte Wetterentität (Nur die Vorhersage)
      - name: Wettervorhersage OldSchool-Entität
        unique_id: weather_entity_forecast_oldschool
        state: "{{ now().isoformat() }}"
        icon: mdi:hours-24
        attributes:
          forecast: "{{ tagesvorhersage['weather.forecast_haus_elisabeth'].forecast }}"
# Stündliche Wettervorhersagen
  - trigger:
      - platform: time_pattern
        hours: /1
    action:
      - service: weather.get_forecasts
        target:
          entity_id:
            - weather.forecast_haus_elisabeth
        data:
            type: hourly
        response_variable: stundenvorhersage
    sensor:
    # Hier ein Template-Sensor, der verschieden Daten der stündlichen Vorhersage als Attribute gespeichert hat
      - name: Wetter-Vorhersage der nächsten Stunde
        unique_id: forecast_next_1_hour
        state: "{{ now().isoformat() }}"
        icon: mdi:hours-24
        attributes:
          condition: "{{ stundenvorhersage['weather.forecast_haus_elisabeth'].forecast[1].condition }}"
          cloud_coverage: "{{ stundenvorhersage['weather.forecast_haus_elisabeth'].forecast[1].cloud_coverage }}"
          temperature: "{{ stundenvorhersage['weather.forecast_haus_elisabeth'].forecast[1].temperature }}"
    # Alternativ ein Template-Sensor, der die Temperatur der stündlichen Vorhersage Status hat (Vorteile bei Verlauf, Automationen, etc.)
      - name: Temperatur-Vorhersage der nächsten Stunde
        unique_id: temperature_forecast_next_hour
        state: "{{ stundenvorhersage['weather.forecast_haus_elisabeth'].forecast[1].temperature }}"
        unit_of_measurement: °C
      - name: Bedingungs-Vorhersage der nächsten Stunde
        unique_id: condition_forecast_next_hour
        state: "{{ stundenvorhersage['weather.forecast_haus_elisabeth'].forecast[1].condition }}"

Danke an Olli von smarterkram.de für dein Hinweis zum Fehler im Template 💙

Nutzen in einer Automation

Hier noch ein Hinweis aus den YouTube-Kommentaren, damit ihr nicht so lange suchen müsst:

Falls wer z.B.: Shelly für Wärmepumpe bei Attribut Tageshöchsttemperatur unter 24 Grad einschalten möchte, braucht nur auf : Automatisieren & Szenen >> Automatisierung erstellen >> Entität: Forecast Home und unter Attribut: Temperatur im Drop-down-Menü aussuchen

https://www.youtube.com/watch?v=GEkQxOC2rdE&lc=UgzIxMzoKEjcehSXa114AaABAg

Fazit

Zusammengefasst ermöglicht das kommende Update 2024.03 von Home Assistant eine noch individualisierte Nutzung von Wetterdaten und -vorhersagen in deinem Smart Home.

Obwohl sich die Art und Weise ändert, wie du auf diese Daten zugreifst und sie nutzen kannst, bietet das Update letztlich die Chance, deine Hausautomation noch besser auf deine Bedürfnisse abzustimmen.

Mit der Anleitung in diesem Video findest du dich schnell in den Neuerungen zurecht und kannst das volle Potenzial dieser spannenden Funktionen ausschöpfen. Bleib neugierig, tu es selbst und entdecke, was Home Assistant für dich bereithält!

Verpasse keine Tipps!

Ich senden keinen Spam! Erfahre mehr in der Datenschutzerklärung.

Transparenz: In diesem Artikel sind Partnerlinks enthalten. Durch einen Klick darauf ge­lan­gt ihr direkt zum Anbieter. Solltet ihr euch dort für einen Kauf entscheiden, erhalte ich ei­ne kleine Provision. Für euch ändert sich am Preis nichts & Partnerlinks haben keinerlei Einfluss auf meine Berichterstattung. Vielen Dank für deine Unterstützung!

Gründer von simon42. Schreibt hier ehrlich und leidenschaftlich über Smart Home und Technik Themen, denn das Zuhause wurde bereits von Sprachassistenten übernommen und die Kontrolle abgegeben 😁

Nennenswerte Antworten

  1. Ich bin dabei und möchte das gerne zu meinem Hass hinzufügen.
    Leider scheitere ich an der templates.yaml irgendwie total… wenn ich den Code von dir in meine templates.yaml reinhaue bekomme ich folgenden Fehler.

    Invalid config for ‘template’ at templates.yaml, line 9: ‘template’ is an invalid option for ‘template’, check: template

  2. Hi, sinnvoll wäre es, wenn Du deinen Code hier postest.

  3. template:
    # Der neue Weg (forcasts mit s)
    # Tägliche Wettervorhersagen
      - trigger:
          - platform: time_pattern
            hours: /1
        action:
          - service: weather.get_forecasts
            target:
              entity_id:
                - weather.nuernberg
            data:
                type: daily
            response_variable: tagesvorhersage
        sensor:
        # Hier ein Template-Sensor, der verschieden Daten der Täglichen Vorhersage als Attribute gespeichert hat
          - name: Wetter-Vorhersage des nächsten Tages
            unique_id: forecast_next_1_day
            state: "{{ now().isoformat() }}"
            icon: mdi:hours-24
            attributes:
              condition: "{{ tagesvorhersage['weather.nuernberg'].forecast[1].condition }}"
              cloud_coverage: "{{ tagesvorhersage['weather.nuernberg'].forecast[1].cloud_coverage }}"
              temperature: "{{ tagesvorhersage['weather.nuernberg'].forecast[1].temperature }}"
              datetime: "{{ tagesvorhersage['weather.nuernberg'].forecast[1].datetime }}"
          # Die gute, alte Wetterentität (Nur die Vorhersage)
          - name: Wettervorhersage OldSchool-Entität
            unique_id: weather_entity_forecast_oldschool
            state: "{{ now().isoformat() }}"
            icon: mdi:hours-24
            attributes:
              forecast: "{{ tagesvorhersage['weather.nuernberg'].forecast }}"
    # Stündliche Wettervorhersagen
      - trigger:
          - platform: time_pattern
            hours: /1
        action:
          - service: weather.get_forecasts
            target:
              entity_id:
                - weather.nuernberg
            data:
                type: hourly
            response_variable: stundenvorhersage
        sensor:
        # Hier ein Template-Sensor, der verschieden Daten der stündlichen Vorhersage als Attribute gespeichert hat
          - name: Wetter-Vorhersage der nächsten Stunde
            unique_id: forecast_next_1_hour
            state: "{{ now().isoformat() }}"
            icon: mdi:hours-24
            attributes:
              condition: "{{ stundenvorhersage['weather.nuernberg'].forecast[1].condition }}"
              cloud_coverage: "{{ stundenvorhersage['weather.nuernberg'].forecast[1].cloud_coverage }}"
              temperature: "{{ stundenvorhersage['weather.nuernberg'].forecast[1].temperature }}"
        # Alternativ ein Template-Sensor, der die Temperatur der stündlichen Vorhersage Status hat (Vorteile bei Verlauf, Automationen, etc.)
          - name: Temperatur-Vorhersage der nächsten Stunde
            unique_id: temperature_forecast_next_hour
            state: "{{ stundenvorhersage['weather.nuernberg'].forecast[1].temperature }}"
            unit_of_measurement: °C
          - name: Bedingungs-Vorhersage der nächsten Stunde
            unique_id: condition_forecast_next_hour
            state: "{{ stundenvorhersage['weather.nuernberg'].forecast[1].condition }}"```
  4. Also wenn du schon eine ausgelagerte yaml hast (templates.yaml) ist diese wahrscheinlich schon in der configuration.yaml referenziert

    so in die Richtung

    #Includes
    automation: !include automations.yaml
    script: !include scripts.yaml
    scene: !include scenes.yaml
    sensor: !include_dir_merge_list _my/sensors/
    template: !include_dir_merge_list _my/templates/
    binary_sensor: !include_dir_merge_list _my/binary_sensors/
    media_player: !include_dir_merge_list _my/media_players/
    weather: !include_dir_merge_list _my/weather/
    

    dann braucht oben in Zeile 1 nicht

    template:
    

    stehen, die Zeile 1 löschen und alles ein Tab nach links rücken

Setze die Diskussion fort unter community.simon42.com

11 mehr antworten

Teilnehmer

Avatar for system Avatar for MelleD Avatar for SaschaHA Avatar for FunkyFux Avatar for annkam Avatar for der_Micro Avatar for xxLexanixx Avatar for Osorkon Avatar for Matzi

21 Gedanken zu „Wetter-Daten & Vorhersagen ab Home Assistant 2024.3 verstehen“

  1. Woher bekommt die Weather Forcast Card eigentlich ihre Werte? Dort gibt man ja nur die Wetter Entität an. Führt sie den Dienst automatisch aus?

    Antworten
  2. Hallo,

    ich habe versucht den Code zu integrieren und habe diesen vorab unter dem Punkt “Entwicklerwerkzeuge” unter dem Reiter “Template” rein kopiert um diesen zu testen.

    Leider wird mir immer folgendes angezeigt:

    UndefinedError: ‘tagesvorhersage’ is undefined

    Wenn ich den Abschnitt raus nehme und nur noch den mit “stundenvorhersage” drin lasse kommt der selbe Fehler nur mit Stundenvorhersage:

    UndefinedError: ‘stundenvorhersage’ is undefined

    Hat jemand eine Idee?

    Antworten
    • Hallo, ich habe das gleiche Problem. Man definiert die Variable mit

      response_variable: Stundenvorhersage.

      Aber die wird in state: “{{ Stundenvorhersage [‘weather.forecast…. nicht erkannt.

    • Bei mir das selbe. Komischerweise funktioniert es bei der old Scool entität und der Wettervorhersage der nächsten Stunde. Also immer da, wo Attribute beschrieben werden. Da wo es auf den Status der Entität geschrieben werden soll funktioniert es nicht.

  3. Also, ich finde es einfach richtig mies von HA, dass sie diese Änderung einfach so durchsetzen. Es gibt nicht mal die Wahlmöglichkeit. Mir hat es meine Automation so dermaßen zerhauen und ich bekomme es mit den xtausend Anleitungen nicht hin, wieder einen Sensor zu haben, wo einfach die erwartete höchste Temperatur des Tages enthalten ist. Das war immer eine Bedingung für meine Automation der Rollos: Die Rollos sollen dann automatisch runterfahren, wenn die zu erwartende Temperatur des Tages einen Schwellwert überschreitet. Hat immer funktioniert. Aber nein, dieses Sch*** Update muss etwas, das über zwei Jahre lang funktioniert hat einfach mal zerschießen.

    Antworten

Schreibe einen Kommentar

Send this to a friend