Get EDF Tempo information

De mon coté, j’interdis la charge de la voiture en heures pleines même en mode forcé les jours rouges, je baisse d’un degré en rouge et je limite le délestage (puissance max du compteur de la maison à un instant t) en empéchant les radiateurs de démarrer à tour de rôle. Ce dernier point est fait grace à cette intégration: GitHub - jmcollin78/awesome_thermostat: An awesome thermostat with preset mode management + windows opening management + activity sensor management

1 Like

Ah d’accord, intéressant de voir comment les gens utilisent HA pour reduire l’impact des jours rouges. Je suppose que ceux qui font ça, vous vous chauffez pas en éléctrique ou avez un autre moyen de chauffage en plus ? Perso, nous on est en 90% élec ici (plus une grande cheminée ouverte plutôt à vocation décorative) et je pourrais pas m’imaginer de délester le chauffage de cette manière, surtout quand il y a plusieurs jours rouges qui se suivent. Là avec le froid qu’on se prend ici en FR pour l’instant (pour nous en Bretagne c’est pas normal d’être dans le négatif :wink: ), c’est plutôt l’inverse et nos radiateurs tournent bien jour et nuit…

Je me demande si ça pourrait pas être utile d’écrire un ptit script qui prend l’historique des consommations par heure de la base statistique de HA et fait tourner une simulation sur les différents tarifs actuels d’EDF (ou concurrents) pour pouvoir réellement comparer l’impact sur son propre profil de consommation. Avec Tempo, l’historique des couleurs est dispo pour l’année précédente, ça peut servir de base.

Oui, je suis full électrique à la maison et lorsqu’on a emménagé, on a remplacer la cheminée ouverte à vocation décorative par un poele à bois. On a fait une grand partie tout seul (démontage de la cheminée), un artisan est venu juste pour tuber le conduit et mettre en service le poele.

Quand c’est rouge, on chauffe au poele et ça chauffe toute la maison. C’est vite amortit un poele d’autant qu’il y a 40% de crédit d’impots si je me souviens bien.

Je recommande fortement le poele (à granule, à bois, …). Seul gros inconvénient, les corvées de bois.

J’ai tempo depuis pas très longtemps, mais j’ai fait cette simulation au jour le jour. Aujourd’hui (journée froide BLEU sans chauffage au bois), à 16h30, je gagne déjà presque 3 euros:

Capture d’écran 2022-12-11 à 16.39.21

En passant a Tempo, EDF a baissé ma mensualité de 278€ à 165€ directement. Ca vaut manifestement vraiment le coup si on peut différer son utilisation de l’électricité : chauffage alternatif, rechargement des voitures, chauffe-eau sont des bons candidats.

Demain c’est rouge, je devrais être perdant, on va voir.

Je pense de faire ça manuellement de jour en jour ça peut être trompeur, il faudrait comparer sur une plus longue periode, au moins plusieurs mois et sur différentes saisons. Les long term statistics de HA peuvent bien servir à ça, les données sont dispo par tranche horaire.

Au niveau poele c’est sur que c’est efficace, en plus je fais du bois sur mon terrain (c’est une ferme). Mais j’aimerai garder ma jolie cheminée ouverte historique purement pour sa vocation esthétique :slight_smile: Enfin bon, on verra.

J’ai le même en mensuel mais ca fait pas un mois que j’ai l’option TEMPO.

Excellent ! et merci pour le partage du code…
Personnellement, j’ai fait une petite modification sur le sensor “Tempo demain” pour retourner une valeur conforme au site EDF :

    - name: "Tempo Demain"
      value_template: "{{ value_json.couleurJourJ1 | regex_replace(find='^TEMPO_', replace='') | regex_replace(find='^NON_DEFINI', replace='Indéterminé') }}"

Dans la même optique, j’ai également modifié légèrement le code de la carte pour la couleur du fond :

background: {% if is_state('sensor.tempo_aujourd_hui', 'ROUGE') %} 
              red 
            {% elif is_state('sensor.tempo_aujourd_hui', 'BLANC') %} 
              white
            {% elif is_state('sensor.tempo_aujourd_hui', 'BLEU') %} 
              DodgerBlue
            {% elif is_state('sensor.tempo_aujourd_hui', 'NON_DEFINI') %} 
              Orange
            {% else %}
              DimGray
            {% endif %};

C’est cosmétique mais ça permet de faire la différence entre le Tempo demain “Indéterminé” et une valeur invalide (au cas où).
Pour les couleurs… chacun ses goûts !

4 Likes

Bonjour,
Tu dis “ici tu mets ton API key” : que faut-il mettre exactement ? Quand tu t’abonne, on t’attribue:

  • Un ID Client
  • Un ID Secret
  • La possibilité de copier en base 64

Lequel est le bon ?
Merci bcp

Bonjour à tous et meilleurs voeux pour 2023,
Au risque de passer pour le dernier des charlots, je ne comprends comment intégrer le tempo sous ha après avec modifier les fichiers yaml (config et rest), puis avoir redémarré.
Où faut-il aller? Que faut-il faire?

Merci,
François

Bonjour François
Tu peux commencer par vérifier que tes entités existent en allant dans le menu outils de développement sous l’onglet état et en filtrant sur le nom que tu as donné à tes entités .
Si elles sont bien là , tu peux alors éditer le tableau de bord et ajouter la carte « entités » puis ajouter les entités en question

Bonjour à tous,

J’ai fini par développer ma propre intégration Tempo pour Home Assistant. Elle utilise l’API de RTE et devrait donc être la 1ère à avoir l’info (avant EDF).

Ce thread m’ayant bien aidé au début de mes recherches, je me permets de la partager ici, pour ceux que cela intéresserait :

N’hésitez pas à m’ouvrir une issue sur github en cas de découverte d’un bug !

12 Likes

Hekmon - Works really nice, having a quick look at your code, do you check the RTE api site every 30 minutes ?

The tempo.yaml code paste on git hub didn’t work - the sensor names don’t have emoji and the changement_de_couleur needed to be changed - see below

Thanks for the work - way above my level :grinning_face_with_smiling_eyes:

type: entitie
entities:
  - entity: sensor.rte_tempo_couleur_actuelle
    secondary_info: last-changed
    name: Todays Colour
  - entity: sensor.rte_tempo_prochaine_couleur_changement
    name: Next Change
    secondary_info: none
  - entity: sensor.rte_tempo_prochaine_couleur
    secondary_info: last-changed
    name: Tomorrows Colour
title: Tempo
2 Likes

Top. Est ce ton intégration gère aussi le cout courant en euros/kwh ? (avec la gestion du changement au lendemain à 6h).
Utile pour le Energy Dashboard de HA, qui sait calculer une facture par jour. (j’ai une solution locale qui fonctionne chez moi au besoin Si tu gère le temps restant jusqu’au prochain changement cela devrait être le cas).

J’ai la meme question… je ne sais pas si la bonne approche est de passer par un utility meter ou bien un sensor prix qui retourne un cout différent selon une régle…

perso j’ai un sensor prix et cela fonctionne bien, utilisable par le Energy Dashboard pour calculer la facture du jour (granularité heure). Mais le utility meter serait utile pour calculer la proportion de HC/HP par couleur. Donc je dirai qu’il faut les deux.

1 Like

Sorry for the delay, I did not received any notifications from the forum :thinking:

Documentation was buggy from v1.0.0 to v1.1.0, it has been fixed since :slight_smile:

For the refresh, it is a bit more complicated than that:

  • If the integration has the next day color, it goes to sleep until next day at 6am
  • If it does not have the next day color, it retries every 30 minutes
  • If anything went wrong (like API down or network issue) it is retried after 10 minutes

And each of these delays are a bit randomized to avoid everyone hammering the RTE API at the same time !

You can check the current implementation details here.

2 Likes

Pas de capteurs prix non. J’y avais réfléchis mais:

  • Il n’existe actuellement pas d’API pour obtenir cette information d’une source fiable (EDF en fait, la seule vrai source étant leur PDF)
  • J’avais pensé à avoir un serveur servant la donnée pour avoir un changement automatique au bon moment côté client mais EDF n’annoncant pas les nouveaux prix à l’avance, l’utilité me parait nulle (si j’installe une integration me donnant les bons prix, je m’attend à ce qu’elle le change toute seule au bon moment et ce n’est pas réalisable proprement en l’état actuel des choses de mon point de vue).

Je préfère donc laisser à l’utilisateur la responsabilité d’update les prix (et d’assumer le délai pour le faire).

Par contre l’intégration possède 2 capteurs qui aident pour les HC/HP (que ce soit les template sensors ou les automations):

  • Un capteur binaire (donc true/false) qui indique si on est en heure creuse ou non (donc combinable avec le capteur de couleur)
  • Un capteur qui indique la date du prochain changement HC/HP.

Cela donne ceci:
Capture d’écran 2023-02-02 233442
Capture d’écran 2023-02-02 233429

1 Like

La discussion a été faite ailleurs :wink:

1 Like

I just wanted to add that this article really helped me:

In my case, I don’t have anything connected to the Linky: I only have a Shelly EM reading imported and exported energy.

So to couple the prices with the RTE Tempo integration from @hekmon, I have created a bunch of entries:

First one input number for each combination of Color and HP / HC.

Then I have created a utility meter with 6 tariffs + TRV (this will auto-create 7 utility meters with a selector)

I can then create these cards to set prices and select the current utility meter where the read energy data will go:

But now, the magic is that thanks to the RTE Temp plugin, I can have a script and an automation that will automatically switch the right utility meter to use:

The script:

alias: "Grid: Energy Meter Selection"
sequence:
  - choose:
      - conditions:
          - condition: state
            entity_id: sensor.rte_tempo_couleur_actuelle
            state: Bleu
          - type: is_on
            condition: device
            device_id: 9c2a0444638b52b827cc51a274c5d1f9
            entity_id: binary_sensor.rte_tempo_heures_creuses
            domain: binary_sensor
        sequence:
          - service: select.select_option
            data:
              option: EDF Tempo Bleu HC
            target:
              entity_id: select.grid_energy_meter
      - conditions:
          - condition: state
            entity_id: sensor.rte_tempo_couleur_actuelle
            state: Bleu
          - type: is_off
            condition: device
            device_id: 9c2a0444638b52b827cc51a274c5d1f9
            entity_id: binary_sensor.rte_tempo_heures_creuses
            domain: binary_sensor
        sequence:
          - service: select.select_option
            data:
              option: EDF Tempo Bleu HP
            target:
              entity_id: select.grid_energy_meter
      - conditions:
          - condition: state
            entity_id: sensor.rte_tempo_couleur_actuelle
            state: Blanc
          - type: is_on
            condition: device
            device_id: 9c2a0444638b52b827cc51a274c5d1f9
            entity_id: binary_sensor.rte_tempo_heures_creuses
            domain: binary_sensor
        sequence:
          - service: select.select_option
            data:
              option: EDF Tempo Blanc HC
            target:
              entity_id: select.grid_energy_meter
      - conditions:
          - condition: state
            entity_id: sensor.rte_tempo_couleur_actuelle
            state: Blanc
          - type: is_off
            condition: device
            device_id: 9c2a0444638b52b827cc51a274c5d1f9
            entity_id: binary_sensor.rte_tempo_heures_creuses
            domain: binary_sensor
        sequence:
          - service: select.select_option
            data:
              option: EDF Tempo Blanc HP
            target:
              entity_id: select.grid_energy_meter
      - conditions:
          - condition: state
            entity_id: sensor.rte_tempo_couleur_actuelle
            state: Rouge
          - type: is_on
            condition: device
            device_id: 9c2a0444638b52b827cc51a274c5d1f9
            entity_id: binary_sensor.rte_tempo_heures_creuses
            domain: binary_sensor
        sequence:
          - service: select.select_option
            data:
              option: EDF Tempo Rouge HC
            target:
              entity_id: select.grid_energy_meter
      - conditions:
          - condition: state
            entity_id: sensor.rte_tempo_couleur_actuelle
            state: Rouge
          - type: is_off
            condition: device
            device_id: 9c2a0444638b52b827cc51a274c5d1f9
            entity_id: binary_sensor.rte_tempo_heures_creuses
            domain: binary_sensor
        sequence:
          - service: select.select_option
            data:
              option: EDF Tempo Rouge HP
            target:
              entity_id: select.grid_energy_meter
mode: single
icon: mdi:script-text

The automation:

alias: "Grid: Energy Meter Selection"
description: ""
trigger:
  - type: turned_on
    platform: device
    device_id: 9c2a0444638b52b827cc51a274c5d1f9
    entity_id: binary_sensor.rte_tempo_heures_creuses
    domain: binary_sensor
  - type: turned_off
    platform: device
    device_id: 9c2a0444638b52b827cc51a274c5d1f9
    entity_id: binary_sensor.rte_tempo_heures_creuses
    domain: binary_sensor
  - platform: state
    entity_id:
      - sensor.rte_tempo_couleur_actuelle
condition: []
action:
  - service: script.grid_energy_meter_selection
    data: {}
mode: single

Device ID 9c2a0444638b52b827cc51a274c5d1f9 is actually the RTE Tempo device created by the RTE Tempo integration.

Then in the Energy Dashboard, we need to add all the utility meters, and for each one, link it with the corresponding price entity

2 Likes

I am glad you got it working :blush:

1 Like