J'ai perdu mes prévisions météos dans mes template sensor

Alors oui, vous allez me dire que je suis un boulet que j’ai pas lu le blog etc…
Mais je suis bloqué et je ne sais pas comment modifier mon code.

J’explique, j’ai des sensors meteo pour alimeter un cadre eink, tout marchait bien jusqu’à la dernière mise à jour.

Sauf que là je ne sais pas comment résoudre le souci

Ma configuration


  • Core2024.4.1
  • Supervisor2024.03.1
  • Operating System12.1
  • Interface utilisateur20240404.1

Voici les erreurs:

* Template variable error: None has no element 4 when rendering '{{ state_attr('weather.maison', 'forecast')[4].condition }}'
* Template variable error: None has no element 4 when rendering '{{ state_attr('weather.maison', 'forecast')[4].temperature }}'
* Template variable error: None has no element 5 when rendering '{{ state_attr('weather.maison', 'forecast')[5].condition }}'
* Template variable error: None has no element 5 when rendering '{{ state_attr('weather.maison', 'forecast')[5].temperature }}'

Voici mon code qui du coup ne marche plus

- platform: template
  sensors: 
    # Capteur pour la condition météo actuelle
    weather_condition_now:
      friendly_name: "Condition Météo Actuelle"
      value_template: >
        {% set cond_now = states('weather.maison') %}
        {% if states('sun.sun') == 'below_horizon' %}
            {% if cond_now == 'sunny' %} night {% elif cond_now == 'partlycloudy' %} night-partly-cloudy {% else %} {{ cond_now }} {% endif %}
        {% else %}
            {{ cond_now }}
        {% endif %}

    # Capteurs pour les conditions météo futures
    # Condition Météo Future 0
    weather_condition_future_0:
      friendly_name: "Condition Météo Future 0"
      value_template: "{{ state_attr('weather.maison', 'forecast')[0].condition }}"

    weather_temperature_future_0:
      friendly_name: "Température Météo Future 0"
      value_template: "{{ state_attr('weather.maison', 'forecast')[0].temperature }}"
      unit_of_measurement: '°C'

    # Condition Météo Future 1
    weather_condition_future_1:
      friendly_name: "Condition Météo Future 1"
      value_template: "{{ state_attr('weather.maison', 'forecast')[1].condition }}"

    weather_temperature_future_1:
      friendly_name: "Température Météo Future 1"
      value_template: "{{ state_attr('weather.maison', 'forecast')[1].temperature }}"
      unit_of_measurement: '°C'

    # Condition Météo Future 2
    weather_condition_future_2:
      friendly_name: "Condition Météo Future 2"
      value_template: "{{ state_attr('weather.maison', 'forecast')[2].condition }}"

    weather_temperature_future_2:
      friendly_name: "Température Météo Future 2"
      value_template: "{{ state_attr('weather.maison', 'forecast')[2].temperature }}"
      unit_of_measurement: '°C'

    # Condition Météo Future 3
    weather_condition_future_3:
      friendly_name: "Condition Météo Future 3"
      value_template: "{{ state_attr('weather.maison', 'forecast')[3].condition }}"

    weather_temperature_future_3:
      friendly_name: "Température Météo Future 3"
      value_template: "{{ state_attr('weather.maison', 'forecast')[3].temperature }}"
      unit_of_measurement: '°C'
      
    # Condition Météo Future 4
    weather_condition_future_4:
      friendly_name: "Condition Météo Future 4"
      value_template: "{{ state_attr('weather.maison', 'forecast')[4].condition }}"

    weather_temperature_future_4:
      friendly_name: "Température Météo Future 4"
      value_template: "{{ state_attr('weather.maison', 'forecast')[4].temperature }}"
      unit_of_measurement: '°C'
      
    # Condition Météo Future 5
    weather_condition_future_5:
      friendly_name: "Condition Météo Future 5"
      value_template: "{{ state_attr('weather.maison', 'forecast')[5].condition }}"

    weather_temperature_future_5:
      friendly_name: "Température Météo Future 5"
      value_template: "{{ state_attr('weather.maison', 'forecast')[5].temperature }}"
      unit_of_measurement: '°C'

L’intégration met.no marche toujours:


Merci d’avance :slight_smile:

Salut,
l’attribut forecast, vient dêtre supprimer depuis la 2024.4.0.

Va falloir te créer des templates sensors, pour récupérer les données dans un attribut forecast.
regarde ce post:

T’es au top :smiling_face_with_three_hearts:

Tu peux me faire un exemple sur un de mes sensors stp?

   weather_condition_future_0:
      friendly_name: "Condition Météo Future 0"
      value_template: "{{ state_attr('weather.maison', 'forecast')[0].condition }}"

    weather_temperature_future_0:
      friendly_name: "Température Météo Future 0"
      value_template: "{{ state_attr('weather.maison', 'forecast')[0].temperature }}"
      unit_of_measurement: '°C'

T’es template se base sur les jours ? ou heure ?

edit:
je vais te faire par jours et heures. Tu doit créer un template sensor ( mais le nouveua format ):

template:
  - trigger:
      - platform: time_pattern
        hours: /1
      - platform: homeassistant
        event: start
    action:
      - service: weather.get_forecasts
        data:
          type: daily
        target:
          entity_id: weather.maison
        response_variable: daily
    sensor:
      - name: Weather Forecast Jour Maison
        unique_id: weather_forecast_jour_maison
        state: "{{ daily['weather.maison'].forecast[0].condition }}"
        attributes:
          forecast: "{{ daily['weather.maison'].forecast }}"

  - trigger:
      - platform: time_pattern
        hours: /1
      - platform: homeassistant
        event: start
    action:
      - service: weather.get_forecasts
        data:
          type: hourly
        target:
          entity_id: weather.maison
        response_variable: hourly
    sensor:
      - name: Weather Forecast Heure Maison
        unique_id: weather_forecast_heure_maison
        state: "{{ hourly['weather.maison'].forecast[0].condition }}"
        attributes:
          forecast: "{{ hourly['weather.maison'].forecast }}"

dans tes templates actuelle tu changera juste l’entité weather.maison pas la nouvelle du template sensor.weather_forecast_jour_maison.

Alors tu va avoir un problème, tu utilise des templates sensors ( ancien format ) qui n’a pas d’option trigger. Obliger de faire avec le nouveau format de template.

mais je me pose la question de savoir si l’ancien et nouveau format peuvent cohabiter.

ancien format.

sensor:
  - platform: template
    sensors: 

nouveau format

template:

le 0 sur les heures à venir

Les autres les jours

Je t’es fais pour les deux, sur le post précédent.

du coup j’ai tout refait, mais je me heurte à un truc con…
Je ne retrouve plus aucun des sensors corrigés nulle part, tu peux m’aider (déso)

template:
  - sensor:
      - name: "Conso corrigée"
        unique_id: "conso_corrigee"
        unit_of_measurement: "Wh"
        state: "{{ (states('sensor.shellyem_34945470f4ca_channel_2_power') | float * 1.08) | round(0) }}"
        attributes:
          device_class: energy
          icon: mdi:gauge
          state_class: total_increasing

      - name: "Jour de la Semaine"
        unique_id: "jour_de_la_semaine"
        state: "{{ now().strftime('%A') }}"

      - name: "Jour du Mois"
        unique_id: "jour_du_mois"
        state: "{{ now().day }}"

      - name: "Mois Actuel"
        unique_id: "mois_actuel"
        state: "{{ now().strftime('%B') }}"

      - name: "Poubelle Normale"
        unique_id: "poubelle_normale"
        state: >
          {% set start_date = as_timestamp(strptime('2024-02-27', '%Y-%m-%d')) %}
          {% set current_date = as_timestamp(now()) %}
          {% set days_since_start = ((current_date - start_date) / 86400) | int %}
          {% if now().weekday() == 1 and days_since_start % 14 == 0 %}
            'À sortir'
          {% else %}
            'Pas aujourd'hui'
          {% endif %}

      - name: "Poubelle Végétaux"
        unique_id: "poubelle_vegetaux"
        state: >
          {% if now().weekday() == 3 %}
            'À sortir'
          {% else %}
            'Pas aujourd'hui'
          {% endif %}

      - name: "Énergie cumulée aujourd'hui"
        unique_id: "cumulated_energy_today"
        unit_of_measurement: "kWh"
        state: "{{ (states('sensor.shellyem_34945470f4ca_channel_2_energy') | float / 1000) }}"
        attributes:
          device_class: energy

      - name: "Texte Weather"
        unique_id: "texte_weather"
        state: "{{ state_attr('weather.metno', 'condition') }}"

      - name: "Noms des Chauffages"
        unique_id: "noms_des_chauffages"
        state: "{{ states('sensor.chauffages_actifs_text') }}"

      - name: "Chauffage Actif"
        unique_id: "heating_active"
        state: >
          {{ (states('sensor.chambre_de_bebe_heating')|int > 0) or
             (states('sensor.bureau_heating')|int > 0) or
             (states('sensor.chambre_de_nell_heating')|int > 0) or
             (states('sensor.chambre_des_garcons_heating')|int > 0) or
             (states('sensor.chambre_des_parents_heating')|int > 0) or
             (states('sensor.cuisine_heating')|int > 0) or
             (states('sensor.entree_heating')|int > 0) or
             (states('sensor.salon_heating')|int > 0) }}

      - name: "Nombre de Chauffages Actifs"
        unique_id: "nombre_chauffages_actifs"
        unit_of_measurement: "chauffages"
        state: >
          {{ [states('sensor.chambre_de_bebe_heating')|int,
               states('sensor.bureau_heating')|int,
               states('sensor.chambre_de_nell_heating')|int,
               states('sensor.chambre_des_garcons_heating')|int,
               states('sensor.chambre_des_parents_heating')|int,
               states('sensor.cuisine_heating')|int,
               states('sensor.entree_heating')|int,
               states('sensor.salon_heating')|int] | select('gt', 0) | list | count }}
        attributes:
          icon: mdi:radiator

      - name: "Conso totale"
        unique_id: "conso_totale"
        unit_of_measurement: "Wh"
        state: "{{ states('sensor.shellyem_34945470f4ca_channel_2_power') | float + states('sensor.shellyem_34945470f4ca_channel_1_power') | float }}"
        attributes:
          device_class: energy
          icon: mdi:gauge
          state_class: total_increasing

      - name: "Energie renvoyée au réseau"
        unique_id: "renvoi_reseau:"
        unit_of_measurement: "Wh"
        state: "{{ states('sensor.shellyem_34945470f4ca_channel_2_energy_returned') }}"
        attributes:
          device_class: energy
          icon: mdi:gauge
          state_class: total_increasing

      - name: "Nombre de lumières allumées"
        unique_id: "nombre_lumieres_on"
        state: "{{ states.light | selectattr('state', 'eq', 'on') | rejectattr('attributes.friendly_name','search','all') | list | count }}"

      - name: "Solaire Beem Total"
        unique_id: "solaire_beem_total"
        unit_of_measurement: 'watts'
        state: "{{ states('sensor.beem1_ch1_power') | float + states('sensor.beem2_ch1_power') | float }}"

      - name: "Solaire Voltalia Total"
        unique_id: "solaire_voltalia_total"
        unit_of_measurement: 'watts'
        state: "{{ states('sensor.arriere_cuisine_ch1_power') | float + states('sensor.arriere_salon_ch1_power') | float }}"

      - name: "Température SPA"
        unique_id: "temperature_spa"
        unit_of_measurement: '°C'
        state: "{{ state_attr('climate.spa', 'current_temperature') }}"

      - name: "Prix corrigé"
        unique_id: "conso_prix_corrigee"
        unit_of_measurement: '€'
        state: "{{ states('edf_tempo_prix_actuel') | float / 100 }}"
        attributes:
          device_class: monetary
          icon: mdi:cash-lock

      - name: "Tempo Demain"
        unique_id: "tempo_demain"
        state: "{{ states('sensor.tempo_demain') }}"

      - name: "Tempo Aujourd'hui"
        unique_id: "tempo_aujourdhui"
        state: "{{ states('sensor.tempo_aujourdhui') }}"

  - trigger:
      - platform: time_pattern
        hours: /1
    action:
      - service: weather.get_forecasts
        data:
          type: daily
        target:
          entity_id: weather.maison
        response_variable: daily_forecast
    sensor:
      # Capteur pour la condition météo actuelle
      - name: Weather Condition Now Maison
        unique_id: weather_condition_now
        state: >-
          {% set cond_now = daily_forecast['weather.maison'].forecast[0].condition %}
          {% if is_state('sun.sun', 'below_horizon') %}
            {% if cond_now == 'sunny' %} night {% elif cond_now == 'partlycloudy' %} night-partly-cloudy {% else %} {{ cond_now }} {% endif %}
          {% else %}
            {{ cond_now }}
          {% endif %}
        attributes:
          temperature: "{{ daily_forecast['weather.maison'].forecast[0].temperature }}"
          forecast: "{{ daily_forecast['weather.maison'].forecast[0] }}"

      # Capteurs pour les conditions météo futures (de Future 0 à Future 5)
      - name: Weather Condition Future 0 Maison
        unique_id: weather_condition_future_0
        state: "{{ daily_forecast['weather.maison'].forecast[1].condition }}"
        attributes:
          temperature: "{{ daily_forecast['weather.maison'].forecast[1].temperature }}"
          forecast: "{{ daily_forecast['weather.maison'].forecast[1] }}"

      - name: Weather Condition Future 1 Maison
        unique_id: weather_condition_future_1
        state: "{{ daily_forecast['weather.maison'].forecast[2].condition }}"
        attributes:
          temperature: "{{ daily_forecast['weather.maison'].forecast[2].temperature }}"
          forecast: "{{ daily_forecast['weather.maison'].forecast[2] }}"

      - name: Weather Condition Future 2 Maison
        unique_id: weather_condition_future_2
        state: "{{ daily_forecast['weather.maison'].forecast[3].condition }}"
        attributes:
          temperature: "{{ daily_forecast['weather.maison'].forecast[3].temperature }}"
          forecast: "{{ daily_forecast['weather.maison'].forecast[3] }}"

      - name: Weather Condition Future 3 Maison
        unique_id: weather_condition_future_3
        state: "{{ daily_forecast['weather.maison'].forecast[4].condition }}"
        attributes:
          temperature: "{{ daily_forecast['weather.maison'].forecast[4].temperature }}"
          forecast: "{{ daily_forecast['weather.maison'].forecast[4] }}"

      - name: Weather Condition Future 4 Maison
        unique_id: weather_condition_future_4
        state: "{{ daily_forecast['weather.maison'].forecast[5].condition }}"
        attributes:
          temperature: "{{ daily_forecast['weather.maison'].forecast[5].temperature }}"
          forecast: "{{ daily_forecast['weather.maison'].forecast[5] }}"

      - name: Weather Condition Future 5 Maison
        unique_id: weather_condition_future_5
        state: "{{ daily_forecast['weather.maison'].forecast[6].condition }}"
        attributes:
          temperature: "{{ daily_forecast['weather.maison'].forecast[6].temperature }}"
          forecast: "{{ daily_forecast['weather.maison'].forecast[6] }}"

          
          
          
          
          
          

Je vais manger, je regarde après.

bon appetit et merci :slight_smile:

Je précise c mon fichier sensors.yaml

le nouveau format template, ne ce mets pas dans sensor:, mais template:.
si tu veut utiliser un template.yaml, rajoute la ligne template: !include template.yaml dans ton configuration.yaml.
Tu créer un fichier template.yaml dans /config/ et colle le code dedans. Ne mets pas template: au début:

  - sensor:
      - name: "Conso corrigée"
        unique_id: "conso_corrigee"
        unit_of_measurement: "Wh"
        state: "{{ (states('sensor.shellyem_34945470f4ca_channel_2_power') | float * 1.08) | round(0) }}"
        attributes:
          device_class: energy
          icon: mdi:gauge
          state_class: total_increasing

ta fais des erreus, icon:, device_class et state_class sont au même niveau que state. Pas besoin de mettre atributes.

        attributes:
          device_class: energy
          icon: mdi:gauge
          state_class: total_increasing

correction:

  - sensor:
      - name: "Conso corrigée"
        unique_id: "conso_corrigee"
        unit_of_measurement: "Wh"
        state: "{{ (states('sensor.shellyem_34945470f4ca_channel_2_power') | float * 1.08) | round(0) }}"
        device_class: energy
        icon: mdi:gauge
        state_class: total_increasing

ok j’ai migré du coup la météo dans template:

  - trigger:
      - platform: time_pattern
        hours: /1
    action:
      - service: weather.get_forecasts
        data:
          type: daily
        target:
          entity_id: weather.maison
        response_variable: daily_forecast
    sensor:
      # Capteur pour la condition météo actuelle
      - name: Weather Condition Now
        unique_id: weather_condition_now
        state: >-
          {% set cond_now = daily_forecast['weather.maison'].forecast[0].condition %}
          {% if is_state('sun.sun', 'below_horizon') %}
            {% if cond_now == 'sunny' %} night {% elif cond_now == 'partlycloudy' %} night-partly-cloudy {% else %} {{ cond_now }} {% endif %}
          {% else %}
            {{ cond_now }}
          {% endif %}
        attributes:
          forecast: "{{ daily_forecast['weather.maison'].forecast[0] }}"

      # Capteurs pour les conditions météo futures (de Future 0 à Future 5)
      - name: Weather Condition Future 0
        unique_id: weather_condition_future_0
        state: "{{ daily_forecast['weather.maison'].forecast[1].condition }}"
        attributes:
          forecast: "{{ daily_forecast['weather.maison'].forecast[1] }}"

      - name: Weather Condition Future 1
        unique_id: weather_condition_future_1
        state: "{{ daily_forecast['weather.maison'].forecast[2].condition }}"
        attributes:
          forecast: "{{ daily_forecast['weather.maison'].forecast[2] }}"

      - name: Weather Condition Future 2
        unique_id: weather_condition_future_2
        state: "{{ daily_forecast['weather.maison'].forecast[3].condition }}"
        attributes:
          forecast: "{{ daily_forecast['weather.maison'].forecast[3] }}"

      - name: Weather Condition Future 3
        unique_id: weather_condition_future_3
        state: "{{ daily_forecast['weather.maison'].forecast[4].condition }}"
        attributes:
          forecast: "{{ daily_forecast['weather.maison'].forecast[4] }}"

      - name: Weather Condition Future 4
        unique_id: weather_condition_future_4
        state: "{{ daily_forecast['weather.maison'].forecast[5].condition }}"
        attributes:
          forecast: "{{ daily_forecast['weather.maison'].forecast[5] }}"

      - name: Weather Condition Future 5
        unique_id: weather_condition_future_5
        state: "{{ daily_forecast['weather.maison'].forecast[6].condition }}"
        attributes:
          forecast: "{{ daily_forecast['weather.maison'].forecast[6] }}"

      # Capteurs pour les températures futures (de Future 0 à Future 5)
      - name: Weather Temperature Future 0
        unique_id: weather_temperature_future_0
        state: "{{ daily_forecast['weather.maison'].forecast[1].temperature }}"
        unit_of_measurement: '°C'
        attributes:
          forecast: "{{ daily_forecast['weather.maison'].forecast[1] }}"

      - name: Weather Temperature Future 1
        unique_id: weather_temperature_future_1
        state: "{{ daily_forecast['weather.maison'].forecast[2].temperature }}"
        unit_of_measurement: '°C'
        attributes:
          forecast: "{{ daily_forecast['weather.maison'].forecast[2] }}"

      - name: Weather Temperature Future 2
        unique_id: weather_temperature_future_2
        state: "{{ daily_forecast['weather.maison'].forecast[3].temperature }}"
        unit_of_measurement: '°C'
        attributes:
          forecast: "{{ daily_forecast['weather.maison'].forecast[3] }}"

      - name: Weather Temperature Future 3
        unique_id: weather_temperature_future_3
        state: "{{ daily_forecast['weather.maison'].forecast[4].temperature }}"
        unit_of_measurement: '°C'
        attributes:
          forecast: "{{ daily_forecast['weather.maison'].forecast[4] }}"

      - name: Weather Temperature Future 4
        unique_id: weather_temperature_future_4
        state: "{{ daily_forecast['weather.maison'].forecast[5].temperature }}"
        unit_of_measurement: '°C'
        attributes:
          forecast: "{{ daily_forecast['weather.maison'].forecast[5] }}"

      - name: Weather Temperature Future 5
        unique_id: weather_temperature_future_5
        state: "{{ daily_forecast['weather.maison'].forecast[6].temperature }}"
        unit_of_measurement: '°C'
        attributes:
          forecast: "{{ daily_forecast['weather.maison'].forecast[6] }}"

Il retrouve bien mes entités mais …

je corrige cela de suite

Ca déclenche toutes les heures, attends 13h00.

rajoute ce trigger, pour être tranquille quand tu rédémarre:

  - trigger:
      - platform: time_pattern
        hours: /1
      - platform: homeassistant
        event: start

Edit:
j’avais pas vu , ta fais une erreur. c’est - sensor: au lieu de sensor:

  - trigger:
      - platform: time_pattern
        hours: /1
    action:
      - service: weather.get_forecasts
        data:
          type: daily
        target:
          entity_id: weather.maison
        response_variable: daily_forecast
### ERREUR indexion 
    sensor:
      # Capteur pour la condition météo actuelle
      - name: Weather Condition Now
        unique_id: weather_condition_now
        state: >-
          {% set cond_now = daily_forecast['weather.maison'].forecast[0].condition %}
          {% if is_state('sun.sun', 'below_horizon') %}
            {% if cond_now == 'sunny' %} night {% elif cond_now == 'partlycloudy' %} night-partly-cloudy {% else %} {{ cond_now }} {% endif %}
          {% else %}
            {{ cond_now }}
          {% endif %}
        attributes:
          forecast: "{{ daily_forecast['weather.maison'].forecast[0] }}"

      # Capteurs pour les conditions météo futures (de Future 0 à Future 5)
      - name: Weather Condition Future 0
        unique_id: weather_condition_future_0
        state: "{{ daily_forecast['weather.maison'].forecast[1].condition }}"
        attributes:
          forecast: "{{ daily_forecast['weather.maison'].forecast[1] }}"

      - name: Weather Condition Future 1
        unique_id: weather_condition_future_1
        state: "{{ daily_forecast['weather.maison'].forecast[2].condition }}"
        attributes:
          forecast: "{{ daily_forecast['weather.maison'].forecast[2] }}"
  - trigger:
      - platform: time_pattern
        hours: /1
    action:
      - service: weather.get_forecasts
        data:
          type: daily
        target:
          entity_id: weather.maison
        response_variable: daily_forecast
  - sensor:
      # Capteur pour la condition météo actuelle
      - name: Weather Condition Now
        unique_id: weather_condition_now
        state: >-
          {% set cond_now = daily_forecast['weather.maison'].forecast[0].condition %}
          {% if is_state('sun.sun', 'below_horizon') %}
            {% if cond_now == 'sunny' %} night {% elif cond_now == 'partlycloudy' %} night-partly-cloudy {% else %} {{ cond_now }} {% endif %}
          {% else %}
            {{ cond_now }}
          {% endif %}
        attributes:
          forecast: "{{ daily_forecast['weather.maison'].forecast[0] }}"

      # Capteurs pour les conditions météo futures (de Future 0 à Future 5)
      - name: Weather Condition Future 0
        unique_id: weather_condition_future_0
        state: "{{ daily_forecast['weather.maison'].forecast[1].condition }}"
        attributes:
          forecast: "{{ daily_forecast['weather.maison'].forecast[1] }}"

      - name: Weather Condition Future 1
        unique_id: weather_condition_future_1
        state: "{{ daily_forecast['weather.maison'].forecast[2].condition }}"
        attributes:
          forecast: "{{ daily_forecast['weather.maison'].forecast[2] }}"

mille millions de mercis, j’ai tout refait grace à ta précieuse aide et tout marche:

  - sensor:
      - name: "Conso corrigée"
        unique_id: "conso_corrigee"
        unit_of_measurement: "Wh"
        state: "{{ (states('sensor.shellyem_34945470f4ca_channel_2_power') | float * 1.08) | round(0) }}"
        device_class: energy
        icon: mdi:gauge
        state_class: total_increasing
      - name: "Jour de la Semaine"
        unique_id: "jour_de_la_semaine"
        state: "{{ now().strftime('%A') }}"

      - name: "Jour du Mois"
        unique_id: "jour_du_mois"
        state: "{{ now().day }}"

      - name: "Mois Actuel"
        unique_id: "mois_actuel"
        state: "{{ now().strftime('%B') }}"

      - name: "Poubelle Normale"
        unique_id: "poubelle_normale"
        state: >
          {% set start_date = as_timestamp(strptime('2024-02-27', '%Y-%m-%d')) %}
          {% set current_date = as_timestamp(now()) %}
          {% set days_since_start = ((current_date - start_date) / 86400) | int %}
          {% if now().weekday() == 1 and days_since_start % 14 == 0 %}
            'À sortir'
          {% else %}
            'Pas aujourd'hui'
          {% endif %}

      - name: "Poubelle Végétaux"
        unique_id: "poubelle_vegetaux"
        state: >
          {% if now().weekday() == 3 %}
            'À sortir'
          {% else %}
            'Pas aujourd'hui'
          {% endif %}

      - name: "Énergie cumulée aujourd'hui"
        unique_id: "cumulated_energy_today"
        unit_of_measurement: "kWh"
        state: "{{ (states('sensor.shellyem_34945470f4ca_channel_2_energy') | float / 1000) }}"
        device_class: energy

      - name: "Texte Weather"
        unique_id: "texte_weather"
        state: "{{ state_attr('weather.metno', 'condition') }}"

      - name: "Noms des Chauffages"
        unique_id: "noms_des_chauffages"
        state: "{{ states('sensor.chauffages_actifs_text') }}"

      - name: "Chauffage Actif"
        unique_id: "heating_active"
        state: >
          {{ (states('sensor.chambre_de_bebe_heating')|int > 0) or
             (states('sensor.bureau_heating')|int > 0) or
             (states('sensor.chambre_de_nell_heating')|int > 0) or
             (states('sensor.chambre_des_garcons_heating')|int > 0) or
             (states('sensor.chambre_des_parents_heating')|int > 0) or
             (states('sensor.cuisine_heating')|int > 0) or
             (states('sensor.entree_heating')|int > 0) or
             (states('sensor.salon_heating')|int > 0) }}

      - name: "Nombre de Chauffages Actifs"
        unique_id: "nombre_chauffages_actifs"
        unit_of_measurement: "chauffages"
        state: >
          {{ [states('sensor.chambre_de_bebe_heating')|int,
               states('sensor.bureau_heating')|int,
               states('sensor.chambre_de_nell_heating')|int,
               states('sensor.chambre_des_garcons_heating')|int,
               states('sensor.chambre_des_parents_heating')|int,
               states('sensor.cuisine_heating')|int,
               states('sensor.entree_heating')|int,
               states('sensor.salon_heating')|int] | select('gt', 0) | list | count }}
        icon: mdi:radiator

      - name: "Conso totale"
        unique_id: "conso_totale"
        unit_of_measurement: "Wh"
        state: "{{ states('sensor.shellyem_34945470f4ca_channel_2_power') | float + states('sensor.shellyem_34945470f4ca_channel_1_power') | float }}"
        device_class: energy
        icon: mdi:gauge
        state_class: total_increasing

      - name: "Energie renvoyée au réseau"
        unique_id: "renvoi_reseau:"
        unit_of_measurement: "Wh"
        state: "{{ states('sensor.shellyem_34945470f4ca_channel_2_energy_returned') }}"
        device_class: energy
        icon: mdi:gauge
        state_class: total_increasing

      - name: "Nombre de lumières allumées"
        unique_id: "nombre_lumieres_on"
        state: "{{ states.light | selectattr('state', 'eq', 'on') | rejectattr('attributes.friendly_name','search','all') | list | count }}"

      - name: "Solaire Beem Total"
        unique_id: "solaire_beem_total"
        unit_of_measurement: 'watts'
        state: "{{ states('sensor.beem1_ch1_power') | float + states('sensor.beem2_ch1_power') | float }}"

      - name: "Solaire Voltalia Total"
        unique_id: "solaire_voltalia_total"
        unit_of_measurement: 'watts'
        state: "{{ states('sensor.arriere_cuisine_ch1_power') | float + states('sensor.arriere_salon_ch1_power') | float }}"

      - name: "Température SPA"
        unique_id: "temperature_spa"
        unit_of_measurement: '°C'
        state: "{{ state_attr('climate.spa', 'current_temperature') }}"

      - name: "Prix corrigé"
        unique_id: "conso_prix_corrigee"
        unit_of_measurement: '€'
        state: "{{ states('edf_tempo_prix_actuel') | float / 100 }}"
        device_class: monetary
        icon: mdi:cash-lock

      - name: "Tempo Demain"
        unique_id: "tempo_demain"
        state: "{{ states('sensor.tempo_demain') }}"

      - name: "Tempo Aujourd'hui"
        unique_id: "tempo_aujourdhui"
        state: "{{ states('sensor.tempo_aujourdhui') }}"



  - trigger:
      - platform: time_pattern
        hours: /1
    action:
      - service: weather.get_forecasts
        data:
          type: daily
        target:
          entity_id: weather.maison
        response_variable: daily_forecast
    sensor:
      # Capteur pour la condition météo actuelle
      - name: Weather Condition Now
        unique_id: weather_condition_now
        state: >-
          {% set cond_now = daily_forecast['weather.maison'].forecast[0].condition %}
          {% if is_state('sun.sun', 'below_horizon') %}
            {% if cond_now == 'sunny' %} night {% elif cond_now == 'partlycloudy' %} night-partly-cloudy {% else %} {{ cond_now }} {% endif %}
          {% else %}
            {{ cond_now }}
          {% endif %}
        attributes:
          forecast: "{{ daily_forecast['weather.maison'].forecast[0] }}"

      # Capteurs pour les conditions météo futures (de Future 0 à Future 5)
      - name: Weather Condition Future 0
        unique_id: weather_condition_future_0
        state: "{{ daily_forecast['weather.maison'].forecast[1].condition }}"
        attributes:
          forecast: "{{ daily_forecast['weather.maison'].forecast[1] }}"

      - name: Weather Condition Future 1
        unique_id: weather_condition_future_1
        state: "{{ daily_forecast['weather.maison'].forecast[2].condition }}"
        attributes:
          forecast: "{{ daily_forecast['weather.maison'].forecast[2] }}"

      - name: Weather Condition Future 2
        unique_id: weather_condition_future_2
        state: "{{ daily_forecast['weather.maison'].forecast[3].condition }}"
        attributes:
          forecast: "{{ daily_forecast['weather.maison'].forecast[3] }}"

      - name: Weather Condition Future 3
        unique_id: weather_condition_future_3
        state: "{{ daily_forecast['weather.maison'].forecast[4].condition }}"
        attributes:
          forecast: "{{ daily_forecast['weather.maison'].forecast[4] }}"

      - name: Weather Condition Future 4
        unique_id: weather_condition_future_4
        state: "{{ daily_forecast['weather.maison'].forecast[5].condition }}"
        attributes:
          forecast: "{{ daily_forecast['weather.maison'].forecast[5] }}"

      - name: Weather Condition Future 5
        unique_id: weather_condition_future_5
        state: "{{ daily_forecast['weather.maison'].forecast[6].condition }}"
        attributes:
          forecast: "{{ daily_forecast['weather.maison'].forecast[6] }}"

      # Capteurs pour les températures futures (de Future 0 à Future 5)
      - name: Weather Temperature Future 0
        unique_id: weather_temperature_future_0
        state: "{{ daily_forecast['weather.maison'].forecast[1].temperature }}"
        unit_of_measurement: '°C'
        attributes:
          forecast: "{{ daily_forecast['weather.maison'].forecast[1] }}"

      - name: Weather Temperature Future 1
        unique_id: weather_temperature_future_1
        state: "{{ daily_forecast['weather.maison'].forecast[2].temperature }}"
        unit_of_measurement: '°C'
        attributes:
          forecast: "{{ daily_forecast['weather.maison'].forecast[2] }}"

      - name: Weather Temperature Future 2
        unique_id: weather_temperature_future_2
        state: "{{ daily_forecast['weather.maison'].forecast[3].temperature }}"
        unit_of_measurement: '°C'
        attributes:
          forecast: "{{ daily_forecast['weather.maison'].forecast[3] }}"

      - name: Weather Temperature Future 3
        unique_id: weather_temperature_future_3
        state: "{{ daily_forecast['weather.maison'].forecast[4].temperature }}"
        unit_of_measurement: '°C'
        attributes:
          forecast: "{{ daily_forecast['weather.maison'].forecast[4] }}"

      - name: Weather Temperature Future 4
        unique_id: weather_temperature_future_4
        state: "{{ daily_forecast['weather.maison'].forecast[5].temperature }}"
        unit_of_measurement: '°C'
        attributes:
          forecast: "{{ daily_forecast['weather.maison'].forecast[5] }}"

      - name: Weather Temperature Future 5
        unique_id: weather_temperature_future_5
        state: "{{ daily_forecast['weather.maison'].forecast[6].temperature }}"
        unit_of_measurement: '°C'
        attributes:
          forecast: "{{ daily_forecast['weather.maison'].forecast[6] }}"

et du coup…

tout remarche :wink:

1 « J'aime »

Pense a mettre ton sujet en résolue :wink:

c’est quel écran que tu as ?

j’ai un 7.5" v2
et il passe du noir au gris instantanément lors du refresh …

display:
  - platform: waveshare_epaper
    id: eink_display
    cs_pin: 15
    dc_pin: 27
    busy_pin: 25
    reset_pin: 26
    reset_duration: 2ms
    model: 7.50inv2
    rotation: 270°
    update_interval: never

Salut,
aucune politesse le 3ème âges :rofl: :wink:

1 « J'aime »

Tu pense que mon écran a déjà des cheveux gris ???

  • update_interval (Optional, Time): The interval to re-draw the screen. Defaults to 1s, use never to only manually update the screen via component.update.

comment tu actualise l’écran ?

dans la doc dans l’exemple ta c’est option full_update_every: 30

non, ce que @WarC0zes voulait dire, c’est que être a la retraite n’empêche pas le bonjour ni le merci…

1 « J'aime »