Intégration EcoRT2 Home Assistant

Bonjour,

Juste pour lancer un sujet séparé pour l’intégration HomeAssistant pour le EcoRT2.
Voir le travail de Mati24/Aohzan pour le Ecodevices ou le ipx800

En cas de question, n’hésitez pas à l’indiquer ici ou sur les issues de GitHub.

Bonjour @otello86,

Je vous répond ici pour votre question afin de ne pas gêner le sujet sur l’ecodevices.

Bonjour @PierreC
je suis nouveau sur HomeAssistant (venant de Domoticz) et j’utilise depuis peu votre add-on pour remonter les datas de mon RT2 sur HA (bravo pour le boulot !)
Pouvez-vous me confirmer si vous sourcez vos infos depuis /admin/status.xml ou depuis les json dispo sur l’API ?
Y at-il moyen de mapper les champs de ces xml ou json avec les options disponibles dans le yaml ?
Merci d’avance.

Merci pour votre message !
Effectivement, pour l’instant j’utilise l* 'API JSON et pas le fichier status.xml.

  • L’utilisation du fichier « status.xml » permettrait de réduire les appels, il faudrait cependant saisir ses identifiants d’accès au EcoRT2. Pour l’API JSON, on utilise uniquement une clé d’API qui peut être modifiée.
    Si cela vous semble poser un problème, n’hésitez pas à me le dire. Pour information, ce code est dans le package python pyecodevices_rt2.
  • Si j’ai bien compris la question, oui, il est possible de mapper le champs que vous voulez. Pour simplifier, j’ai préparé des éléments dédiés (conteurs, poste/sous-poste, relais, enocean, etc.) mais vous pouvez aussi indiquer les champs spécifiques de l’API que vous souhaitez.
    Tout est dans la documentation (en particulier ici), il est possible de demander à faire l’appel à une adresse spécifique de l’API « http://ADDRESS_IP:PORT/api/xdevices.json?key=API_KEY&api_get=api_get_value » et extraire dans le JSON de retour une valeur spécifique « api_get_entry ».
    Par exemple pour un capteur :
- name: Elec Index HC
  type: "api"
  component: "sensor"
  api_get: "Index"
  api_get_value: "All"
  api_get_entry: "Index_TI1"
  device_class: "power"
  unit_of_measurement: "kWh"
  icon: "mdi:flash"

Ici, il va charger le lien « http://ADDRESS_IP:PORT/api/xdevices.json?key=API_KEY&Index=All » et ira lire, dans le fichier JSON renvoyé, le champs « Index_TI1 »

Si ça n’est pas clair ou que je n’ai pas compris la question, n’hésitez pas à me le dire.

Bonjour @PierreC
merci pour votre retour.
Pour le moment je récupère les valeurs qu’il me faut par l’intermédiaire de scrape du fichier status.xml
Cela évite effectivement de démultiplier les appels réseau et me permet ainsi d’augmenter la fréquence de rafraichissement.
J’avais mis votre plugin de côté car sans bien maitriser l’API du RT2 cela n’est pas forcément à la portée de tous mais j’ai un peu plus de temps donc je vais quand même creuser votre documentation (merci pour les liens). L’idéal serait de pouvoir faire remonter directement dans HA les différents sensors / switchs disponibles (mes compétences en développement sont limitées mais je verrai si je peux contribuer un peu à votre projet).
En tous cas merci encore car je pense que ce plugin va aider pas mal de monde

Bonjour,

Je viens d’acquérir un EDRT2 et j’essaye de l’importer dans Home Assistant.

J’ai repris les quelques compteurs que j’ai chez moi à savoir les index Linky HP et HC et 2 tores.

Par rapport à l’exemple de base, j’ai pu changer l’unité de mesure des deux index Linky qui sont en Wh et pas en kWh.

Par contre pour changer l’unité de mesure des Tore, j’ai voulu ajouter unit_of_measurement comme pour les entrées « API » comme ceci.

      - name: Index Chauffe Eau
        type: "toroid"
        id: 1
        unit_of_measurement: "Wh"

Le problème c’est que ça me créé 4 sensors :

  • sensor.index_chauffe_eau_consumptionindex
  • sensor.index_chauffe_eau_consumptionprice
  • sensor.index_chauffe_eau_productionindex
  • sensor.index_chauffe_eau_productionprice

Mais l’unité de mesure modifiée est celle du prix.

Je pense que c’est un petit bug.

Rien de bien grave, on peut changer la valeur via customize.yaml :

sensor.index_chauffe_eau_consumptionindex:
  unit_of_measurement: Wh
sensor.index_chauffe_eau_productionindex:
  unit_of_measurement: Wh

Bonjour @otello86,

Si vous avez plus de questions sur l’usage du plugin pour le prendre en main, n’hésitez pas (bon, c’est vrai, j’ai un long délai de réponse en ce moment, désolé :wink: )

Juste pour revenir sur ce que vous évoquez sur l’usage de l’API et la possibilité de remontrer directement dans HA les différents sensors/switchs disponibles, c’est exactement ce que je voulais faire avec ce plugin.
Cependant, il ne me semblait pas forcément intéressant de remonter l’ensemble des valeurs alors que très peu sont configurées sur le RT2.

L’idée est donc que vous pouvez remonter les informations spécifiques que vous souhaitez, mais sans avoir à connaitre l’API. Le premier exemple dans la documentation montre les différentes possibilités.

Par exemple, si vous avez votre chauffe-eau contrôlé par le relai 1 de votre EcoRT2, vous pouvez regarder dans l’API quelles valeurs paramétrer, ou simplement faire :

- name: Relay 1
  type: "relay"
  id: 1
  component: "sensor"

Ou si vous avez une lumière connectée en EnOcean sur l’entrée 2 sur votre EcoRT2 :

- name: Ma lumière EnOcean
  type: "enocean"
  component: "light"
  id: 2

Ou si vous souhaitez récupérer les valeurs du Sous-Poste 2 de consommation du Poste 1 :

 - name: Sous-Poste 2 du Poste 1
   type: "post"
   id: 1
   subpost: 2

Pour information, cette dernière entrée pour le Sous-Poste va en fait créer automatiquement 5 capteurs :

  1. Index total du Sous-Poste
  2. Index journalier du Sous-Poste
  3. Le prix total actuel du Sous-Poste
  4. Le prix journalier du Sous-Poste
  5. La puissance instantanée du Sous-Poste

L’idée était ainsi de permettre de récupérer chaque élément du RT2 (Compteur, Entrée Numérique, EnOcean Sensor/Switch, Poste et Sous-Poste, Relais, Index de fournisseurs, Tores, Sorties Virtuelles, Chauffage/X4FP et Capteur XTHL) sans avoir à connaitre l’API. Mais l’usage direct de l’API est toujours possible si une chose spécifique doit être faite.

Si ce n’est pas clair, n’hésitez pas à me dire ou à décrire ce que vous souhaitez remonter de votre RT2 et on pourra essayer de regarder ensemble :slight_smile:

Bonjour @zglurb,

Merci pour ce retour !
Effectivement, sur les tores j’ai mis par défaut l’unité « kWh » car… en fait je les remonte personnellement directement à partir d’un Poste/Sous-poste qui ne propose que cette unité, merci d’avoir testé ! :wink:
J’ajoute ça sur la liste des bugs à corriger sur le github.

Pour le paramètre unit_of_measurement, je m’étais dit que l’unité que l’on pourrait vouloir changer plus facilement serait le prix, s’il est utilisé hors de la zone euro.

Cependant, maintenant que vous me le pointez, je vois aussi que pour les Postes et Sous-Poste, j’ai fixé les unités kW et kWh alors qu’ils peuvent aussi être en kVAh, m3 ou L…
Je vais voir si je peux permettre de facilement gérer cela dans la prochaine version (peut être avec un paramètre indiquant la nature de la mesure), ou au moins ajouter votre indication dans la document pour modifier les unités dans customize.yaml. Merci encore !

N’hésitez pas à me dire si vous voyez d’autres choses étranges… j’utilise le RT2 de façon assez limitée (Tores, Relais, EnOcean, X4FP) et uniquement pour de la consommation, je suis donc certainement passé à côté de nombreuses autres choses.

1 « J'aime »