Z-Linky passage mode historique en mode standard, Valeur intensité arrondi à l'unité

Bonjour,
J’ai installé mon zlinky via zigbee2mqtt en mode historique, tout fonctionne correctement.
Le compteur a basculé en mode standard à minuit, modification de la configuration du zlinky en mode standard et là toutes les mesures ne remontent pas.

Vaut-il mieux supprimer le zlinky de zigbee2mqtt et de Mqtt et refaire un nouvel appairage ? ou intégrer via zigbee2mqtt dans la fenêtre rapport, mais dans ce cas, on ne sait pas quel quelle commande tic, on active 3 tentatives pour avoir la bonne

Merci par avance
Problème résolu, j’ai changé de coordinateur zigbee du coup réapairage de l’ensemble.


Bonjour,
Z-LINKY reparamétré.
Du coup, j’ai les tensions par Phase ainsi que la puissance apparente par phase. Ces 2 valeurs permettent de calculer l’intensité avec précision.

Mon problème étant un utilisateur Basic (et vieux débutant) de home assistant, je ne sais pas comment réaliser cette opération et afficher le résultat dans une carte « gauge »

Un exemple pour réaliser cette procédure serait la bienvenue.

Cordialement Jacquot

Salut,

Cherche la notion de template.
Tu te fais un sensor qui va utiliser les 2 valeurs mentionnées pour faire ton calcul

Merci, je vais regarder cala

Bonjour
C’est un peu compliqué tout cela !
Partant de l’exemple sur la page (moyenne de 2 valeurs arrondies) j’ai fait cela

template:
  - sensor:
      - name: "Int-Ph1"
        unit_of_measurement: "A"
        state: >
          {% set u1 = states('sensor.compteur_linky_urms1') | float %}
          {% set s1 = states('sensor.compteur_linky_sinsts1') | float %}

          {{ (s1 / u1) | round(3, default=0) }}

Ce code, je le colle dans le fichier config de HA, je redémarre HA.
Où je vais trouver la valeur calculée ?
Je ne trouve pas de « sensor.Int-Ph1 ».
Cordialement
Jacquot
Edit:
Je viens de découvrir le « template editor tool » qui me montre que le template en soit fonctionne, la valeur se calcule et est mise à jour.
Reste a trouver comment utiliser le résultat surtout où le trouver

Bonjour
Alors là, je sèche. Mon config.yaml


# Loads default set of integrations. Do not remove.
default_config:

# Text to speech
tts:
  - platform: google_translate


http:
  ssl_certificate: /ssl/fullchain.pem
  ssl_key: /ssl/privkey.pem


automation: !include automations.yaml
script: !include scripts.yaml
scene: !include scenes.yaml
sensor: !include sensors.yaml

Mon sensor.yaml:

# Calcul Intensité Linky
-platform template:
    Int-Ph1:  
    friendly_name: "Int-Ph1"
    unit_of_measurement: "A"
       
    value_template: >-
    state: >
        {% set u1 = states('sensor.compteur_linky_urms1') | float %}
        {% set s1 = states('sensor.compteur_linky_sinsts1') | float %}
        {{(s1 / u1) | round(3, default=0)}}

Quand je fais la vérification des « yaml » j’ai ce message d’erreur:

Configuration non valide !
Invalid config for [sensor]: required key not provided @ data[‹ platform ›]. Got None. (See /config/configuration.yaml, line 17).

Qu’est-ce qui peut provoquer cette erreur ?

Cordialement
Jacquot

Nouvelle configuration directement dans le fichier config.yaml

# Calcul Intensité Linky
sensor:
  - platform: template
    sensors:
    intensite-ph1:
    friendly_name: "intensite-ph1"
    device_class: current
    unit_of_measurement: A       
    value_template: >-
      state: >
        {% set u1 = states('sensor.compteur_linky_urms1') | float %}
        {% set s1 = states('sensor.compteur_linky_sinsts1') | float %}
        {{(s1 / u1) | round(3, default=0)}}

A la vérification, message suivant :

Configuration non valide !
 Invalid config for [sensor.template]: expected dictionary for dictionary value @ data['sensors']. Got None
extra keys not allowed @ data['device_class']. Got 'current'
extra keys not allowed @ data['friendly_name']. Got 'intensite-ph1'
extra keys not allowed @ data['intensite-ph1']. Got None
extra keys not allowed @ data['unit_of_measurement']. Got 'A'
extra keys not allowed @ data['value_template']. Got "state: >\n  {% set u1 = states('sensor.compteur_linky_urms1') | float %}\n  {% set s1 = states('sensor.compteur_linky_sinsts1') | float %}\n  {{(s1 / u1) | round(3, default=0)}}". (See ?, line ?).  

La value template se calcule vu dans l’outil développeur.
Si quelqu’un aurait une idée ou solution, cette dernière serait la bienvenue.

Cordialement
Jacquot

Salut.

Tu as un souci de syntaxe yaml là .
Je n’ai pas testé mais ça doit ressembler plus à ça

sensor:
  - platform: template
    sensors:
      intensite-ph1:
        friendly_name: "intensite-ph1"
        device_class: current
        unit_of_measurement: A       
        value_template: >-
          state: >
            {% set u1 = states('sensor.compteur_linky_urms1') | float %}
            {% set s1 = states('sensor.compteur_linky_sinsts1') | float %}
            {{(s1 / u1) | round(3, default=0)}}

Merci Pulpy-Luke,

Je viens de résoudre le problème, voici la solution qui fonctionne:

sensor:
  - platform: template
    sensors:
      intensite_ph1:
        device_class: current
        unit_of_measurement: A
        value_template: >
          {% set u1 = states('sensor.compteur_linky_urms1') | float %}
          {% set s1 = states('sensor.compteur_linky_sinsts1') | float %}
          {{(s1 / u1) | round(3, default=0)}}

J’avais trouvé par hasard un bout de code similaire au mien ou j’ai remplacé la partie template et elle fonctionnait.
Je l’ai du coup modifié, notamment la partie alignement des yaml (quoique le fichier config avait le point vert).
Là la vérification en vue de redémarrage tournait en boucle.
La différence entre les 2 fichiers est le state en tête des ligne template.
Sans le « state » cela fonctionne. alors que dans les developpertool sous module avec le state la valeur est bonne.

Merci pour tout.

Jacquot

Jacquot