Module ZLinky / ZHA / valeurs de consommations multipliées par 1000

Bonjour,

J’ai installé un module ZLinky qui fonctionne avec ZHA (et non Z2MQTT).

J’ai un contrat Tempo et je trouve bien 6 entités correspondant aux HP et HC des tarifs bleu, blanc et rouge.

Cependant, les valeurs de consommations sont multipliées par 1000. Je vois 1000kWh là où je devrais avoir 1 kWh, notamment dans le tableau de bord Energie.

Je ne vois pas de solution évidente, faut-il créer une variable template pour effectuer la conversion ? Est-ce qu’il y aurait une autre solution ?

D’avance merci pour vos retours.

Cordialement,
Denis

Il va falloir un peu plus d’info pour t’aider car il y a quelques pieges classiques sur le Zlinky.

  • est tu en TIC historique ou standard?
  • comment as tu cablé ton dashboard energie?

Basiquement le zlinky remonte seulement les index de ta conso totale
(BBRHxJy) avec x= P ou C et y=B, R ou W (soit 6 indexs)

Il y a une option sur le zlinky pour passer la precision à 3 ce qui permet d’avoir les index remontés tous les Wh consommés et pas tous les KWh comme par defaut.

Perso je suis sous Z2M, en TIC historique donc une image de ma config ne va pas forcément t’aider tant que ça, mais voilà mes parametres spécifiques du linky dans Z2M:

et mon cablage dans le dashboard energy:
image

et j’ai bien un retour tous les Wh dans le dashboard:

Je suis en mode Historique.

J’ai sélectionné les 6 entités qui remontent les valeurs d’index = HP & HC) x 3 couleurs

Et je ne trouve pas d’endroit pour paramétrer le ZLinky avec les décimales.

image

Je ne pratiques pas ZHA, mais tu as bien un moyen de configurer ton equipement (le zlinky en l’occurence) ?

Là on voit bien que ça a l’air un peu surévalué :
image

Autre option, tu viens cliquer sur ton index (par exemple Tier1)
image
puis sur la roue crantée en haut à droite (a cote des 3 points)


et tu essaie de changer l’unité de mesure:
image

Oui j’ai essayé de changer l’unité de mesure mais sans succès, ça rajoute juste des zéros si je passe de kWh en Wh.

Ok fausse piste alors… Et la config de to Zlinky ?

Sinon, passes sur Z2M… Une rapide recherche sur le forum montre plein de posts avec des problèmes similaires au tien, essiae de les parcourir pour chercher ta solution…

Autre solution: tu crées un Utility Meter qui reprend les valeurs remontées par ton Zlinky / 1000, et tu utilises cet utility meter dans ton dashboard energie. Plus souple à configurer.

Pourquoi pas mais dans ce cas Le Utility Meter calculerait des totaux cumulés sur la base des valeurs instantanées fournies par le ZLinky ?

Alors que je veux juste convertir les valeurs déjà remontées en cumulé ?

J’essaie ceci,mais pour l’instant je ne vois encore rien remonter…

template:        
  - sensor:
      # Conversion des entités en kWh
      - name: "Tier 1 kWh"
        unit_of_measurement: "kWh"
        state_class: "total_increasing"
        device_class: "energy"
        state: "{{ (states('sensor.lixee_zlinky_tic_tier_1_summation_delivered') | float / 1000) | round(3) }}"
      
      - name: "Tier 2 kWh"
        unit_of_measurement: "kWh"
        state_class: "total_increasing"
        device_class: "energy"
        state: "{{ (states('sensor.lixee_zlinky_tic_tier_2_summation_delivered') | float / 1000) | round(3) }}"

      - name: "Tier 3 kWh"
        unit_of_measurement: "kWh"
        state_class: "total_increasing"
        device_class: "energy"
        state: "{{ (states('sensor.lixee_zlinky_tic_tier_3_summation_delivered') | float / 1000) | round(3) }}"
      
      - name: "Tier 4 kWh"
        unit_of_measurement: "kWh"
        state_class: "total_increasing"
        device_class: "energy"
        state: "{{ (states('sensor.lixee_zlinky_tic_tier_4_summation_delivered') | float / 1000) | round(3) }}"

      - name: "Tier 5 kWh"
        unit_of_measurement: "kWh"
        state_class: "total_increasing"
        device_class: "energy"
        state: "{{ (states('sensor.lixee_zlinky_tic_tier_5_summation_delivered') | float / 1000) | round(3) }}"

      - name: "Tier 6 kWh"
        unit_of_measurement: "kWh"
        state_class: "total_increasing"
        device_class: "energy"
        state: "{{ (states('sensor.lixee_zlinky_tic_tier_6_summation_delivered') | float / 1000) | round(3) }}" 

Si tu veux utiliser les remontées du Zlinky pour ton dashboard energie, il te faut utiliser dans tous les cas les valeurs cumulées qui sont remontées par le Zlinky (il doit s’gir une entité en total_increasing). Le dashbaord energie fait les calculs pour afficher les valeurs par heure, jour, mois, etc. Donc rien ne change si tu crées un utility meter, juste une division par 1000 pour avoir la bonne unité.

Pas besoin d’Utility Meter, avec les Template ça marche très bien ! Cette fois j’ai les bonnes valeurs.

Oui, tes templates sont en fait la définition de nouveaux utility meters (définis par leur type : energy, leur unité et state_class: Total increasing). Donc on parle bien de la même chose.

2 « J'aime »

Merci @Denis_BRAUX pour cette précision. En effet quand j’ai installé mon Zlinky et que j’ai vu ces valeurs x1000 sur ZHA je n’ai pas bien compris.

j’ai aussi créé des templates (sans arrondi explicite à 3 décimales, car la valeur d’origine est déjà X1000)

###################################
########### ZLINKY #############
###################################
- sensor:
    - name: "index bleu HC tpl"
      unique_id: "zlinky_index_bleu_hc_tpl"
      unit_of_measurement: "kWh"
      device_class: energy
      state_class: total_increasing
      state: >-
        {{ (states('sensor.zlinky_tic_tier_1_summation_delivered') | float(0)) / 1000 }}
      availability: >-
        {{ states('sensor.zlinky_tic_tier_1_summation_delivered') | is_number }}

Autre déception avec Zlinky, pas de mesure instantanée de la conso, enfin si toutes les XX minutes :confused:

Warning Sign GIF

La dernière màj de HA 2024.11 corrige le problème des valeurs de consommations multipliées par 1000. Du coup, cela a faussé mes templates, mes apexcharts et mon module Energy :confused:

Zha a un vrai problème avec ça, moitié de mes appareil de consommation n’ont pas la bonne unité.