Forum

Fil d’Ariane du forum – Vous êtes ici :ForumProjet XKY: Aides et AstucesSpécial WinkyMQTT et Home Assistant
Please or S’enregistrer to create posts and topics.

MQTT et Home Assistant

PrécédentPage 3 of 3

Salut Lionel,

En ce moment, je suis en Campagne d'été en Antarctique et serais de retour en France fin février.

Malheureusement, les manchots n'utilisent pas encore de compteurs Linky 😉

Je peux avancer sur le code pour cette période, mais il me faudrait une personne qui serait en mesure de le tester sur son système, de me faire des retours et qui soit patiente (en sachant que je n'ai pas tout le temps accès au réseau ici 🙂 )( PS, J'ai quand même pris quelques ESP dans ma valise, il ne me manque juste qu'un LinKy 😉 ).

Sinon, je m'y remets dés que je suis de retour !

A +,

Seb

 

Est-ce que quelqu'un pourrait prendre le temps pour expliquer comment accéder aux données de consommation envoyées par le linky dans home assistant. J'ai relu entièrement ce sujet, mais vous parlez chinois. Il faut dire que je n'y connais rien en MQTT. Je suis également surpris de ne pas réussir à me connecter à mon Winky en utilisant l'adresse IP qui est remontée par ma box.

http://192.168.1.70 n'affiche rien. Je m'entendais à pouvoir accéder à la page de configuration de winky, qui me semble permet de voir la configuration mqtt.

Ensuite je viens d'essayer d'installer Mosquito sur HA. Puis j'essaie de voir si j'arrive à voir des données avec cette configuration que j'ai cru comprendre (bref j'y comprend rien...)

config MQTT
Il ne se passe rien, et en même temps je ne sais pas ce qu'il devrait se passer...
Please help!!

BONJOUR Toug19,

Il faut dire que je n'y connais rien en MQTT

Je t'invite alors à te documenter sur le sujet, en commençant par ici (si tu souhaites utiliser du MQTT avec HA) : https://www.home-assistant.io/integrations/mqtt/

Tu peux également aller chercher de la documentation partout sur le web, il y a de bons articles qui parlent du sujet.

Je suis également surpris de ne pas réussir à me connecter à mon Winky en utilisant l'adresse IP qui est remontée par ma box.

Ça ne devrait pas être une surprise 😉

D'après les différentes sources qui parlent du projet, on comprends bien que le système ne se connecte au réseau wifi que brièvement pour envoyer les données, afin de limiter sa consommation d'énergie (il n'est donc pas possible de le configurer de cette manière).

La procédure de configuration du système se trouve dans ces ressources : https://miniprojets.net/index.php/projet-xky/

Ou sur le forum, dans la section passerelle, Winky version WiFi et Tutos.

Concernant l'ajout des données en MQTT, actuellement, il faudra que tu "bricole" un peu (Config MQTTConfig fichiers YAML, etc...).

Et donc, que tu prennes le temps de te documenter sérieusement avec les ressources citées plus haut (me souviens avoir galéré un peu aussi, avant de pouvoir remonter les données dans HA).

Sinon, il faudra que tu patientes encore quelques mois avant d'avoir une solution "clef en mains" pour la remontée de données MQTT auto dans HA.

 

Bon courage et à +,

Seb

Pour récupérer les infos du Winky sur HA, j'ai ajouté cette config dans un fichier .yaml

Je suis en TIC Standard

(pour faire simple : tu télécharges le module "Studio Code Server" et tu rajoutes cette config dans le fichier configuration.yaml à la racine)

# mqtt
# Linky
mqtt:
  sensor:
    - name: "Puissance Apparente"
      state_topic: "homeassistant/xky/xky-id"
      unique_id: xky.SINSTS
      value_template: "{{ value_json['SINSTS'] }}"
      unit_of_measurement: "VA"
      device_class: apparent_power
      device:
            name: "Compteur Linky"
            manufacturer: "G2Elab"
            model: "XKY"
            hw_version: "C6"
            sw_version: "V68b"
            identifiers:
              - "xky"
    - name: "Puissance Maximale"id
      state_topic: "homeassistant/xky/xky-id"
      value_template: "{{ value_json['SMAXSN'] }}"
      unique_id: xky.SMAXSN
      unit_of_measurement: "VA"
      device_class: apparent_power
      device:
        identifiers:
            - "xky"
    - name: "Tarif en cours"
      state_topic: "homeassistant/xky/xky-id"
      value_template: "{{ value_json['LTARF'] }}"
      unique_id: xky.LTARF
      device:
        identifiers:
            - "xky"
    - name: "Index Total"
      state_topic: "homeassistant/xky/xky-id"
      value_template: "{{ value_json['EAST'] }}"
      unique_id: xky.EAST
      unit_of_measurement: "Wh"
      device_class: energy
      state_class: total_increasing
      device:
        identifiers:
            - "xky"
    - name: "Index Heure Pleine"
      state_topic: "homeassistant/xky/xky-id"
      value_template: "{{ value_json['EASF01'] }}"
      unique_id: xky.EASF01
      unit_of_measurement: "Wh"
      device_class: energy
      state_class: total_increasing
      device:
        identifiers:
            - "xky"
    - name: "Index Heure Creuse"
      state_topic: "homeassistant/xky/xky-id"
      value_template: "{{ value_json['EASF02'] }}"
      unique_id: xky.EASF02
      unit_of_measurement: "Wh"
      device_class: energy
      state_class: total_increasing
      device:
        identifiers:
            - "xky"
    - name: "Index Injection"
      state_topic: "homeassistant/xky/xky-id"
      value_template: "{{ value_json['EAIT'] }}"
      unique_id: xky.EAIT
      unit_of_measurement: "Wh"
      device_class: energy
      state_class: total_increasing
      device:
        identifiers:
            - "xky"
    - name: "Tension Instantanee"
      state_topic: "homeassistant/xky/xky-id"
      value_template: "{{ value_json['URMS1'] }}"
      unique_id: xky.URMS1
      unit_of_measurement: "V"
      device_class: voltage
      device:
        identifiers:
            - "xky"
    - name: "Intensite Instantanee"
      state_topic: "homeassistant/xky/xky-id"
      value_template: "{{ value_json['IRMS1'] }}"
      unique_id: xky.IRMS1
      unit_of_measurement: "A"
      device_class: current
      device:
        identifiers:
            - "xky"
    - name: "Type Abonnement"
      state_topic: "homeassistant/xky/xky-id"
      value_template: "{{ value_json['NGTF'] }}"
      unique_id: xky.NGTF
      device:
        identifiers:
            - "xky"
    - name: "ContactSec"
      state_topic: "homeassistant/xky/xky-id"
      value_template: >
        {% if value_json['EContactSec'] == 1 %}
          {{ "Ouvert" }}
        {% else %}
          {{ "Ferme" }}
        {% endif %}
      unique_id: xky.EContactSec
      device:
        identifiers:
            - "xky"
    - name: "Depassement puissance"
      state_topic: "homeassistant/xky/xky-id"
      value_template: >
        {% if value_json['EDepassement'] == 1 %}
          {{ True }}
        {% else %}
          {{ False }}
        {% endif %}
      unique_id: xky.EDepassement
      device:
        identifiers:
            - "xky"
    - name: "Sens"
      state_topic: "homeassistant/xky/xky-id"
      value_template: >
        {% if value_json['ESensEnergie'] == 1 %}
          {{ "Producteur" }}
        {% else %}
          {{ "Consommateur" }}
        {% endif %}
      unique_id: xky.ESensEnergie
      device:
        identifiers:
            - "xky"
    - name: "Courbe charge point N"
      state_topic: "homeassistant/xky/xky-id"
      value_template: "{{ value_json['CCASN'] }}"
      unique_id: xky.CCASN
      unit_of_measurement: "W"
      device_class: power
      device:
        identifiers:
            - "xky"
    - name: "Courbe charge point N-1"
      state_topic: "homeassistant/xky/xky-id"
      value_template: "{{ value_json['CCASN-1'] }}"
      unique_id: xky.CCASN-1
      unit_of_measurement: "W"
      device_class: power
      device:
        identifiers:
            - "xky"
    - name: "Message"
      state_topic: "homeassistant/xky/xky-id"
      value_template: "{{ value_json['MSG1'] }}"
      unique_id: xky.MSG1
      device:
        identifiers:
            - "xky"
    - name: "RSSI"
      state_topic: "homeassistant/xky/xky-id"
      value_template: "{{ value_json['RSSI'] }}"
      unique_id: xky.RSSI
      unit_of_measurement: dBm
      device_class: signal_strength
      entity_category: diagnostic
      device:
        identifiers:
            - "xky"
Et ça me permet de récupérer les infos dans HA :
Capture HA
Sebastien a réagi à ce message.
Sebastien

Super merci pour le coup de main Gael!

Il faut que je pense à me monter un serveur HA pour faire des tests sur les prochaines versions.

Encore merci,

Jérôme

Quote from Gael on 12 décembre 2024, 22 h 34 min

Pour récupérer les infos du Winky sur HA, j'ai ajouté cette config dans un fichier .yaml

Je suis en TIC Standard

(pour faire simple : tu télécharges le module "Studio Code Server" et tu rajoutes cette config dans le fichier configuration.yaml à la racine)

# mqtt
# Linky
mqtt:
  sensor:
    - name: "Puissance Apparente"
      state_topic: "homeassistant/xky/xky-id"
      unique_id: xky.SINSTS
      value_template: "{{ value_json['SINSTS'] }}"
      unit_of_measurement: "VA"
      device_class: apparent_power
      device:
            name: "Compteur Linky"
            manufacturer: "G2Elab"
            model: "XKY"
            hw_version: "C6"
            sw_version: "V68b"
            identifiers:
              - "xky"
    - name: "Puissance Maximale"id
      state_topic: "homeassistant/xky/xky-id"
      value_template: "{{ value_json['SMAXSN'] }}"
      unique_id: xky.SMAXSN
      unit_of_measurement: "VA"
      device_class: apparent_power
      device:
        identifiers:
            - "xky"
    - name: "Tarif en cours"
      state_topic: "homeassistant/xky/xky-id"
      value_template: "{{ value_json['LTARF'] }}"
      unique_id: xky.LTARF
      device:
        identifiers:
            - "xky"
    - name: "Index Total"
      state_topic: "homeassistant/xky/xky-id"
      value_template: "{{ value_json['EAST'] }}"
      unique_id: xky.EAST
      unit_of_measurement: "Wh"
      device_class: energy
      state_class: total_increasing
      device:
        identifiers:
            - "xky"
    - name: "Index Heure Pleine"
      state_topic: "homeassistant/xky/xky-id"
      value_template: "{{ value_json['EASF01'] }}"
      unique_id: xky.EASF01
      unit_of_measurement: "Wh"
      device_class: energy
      state_class: total_increasing
      device:
        identifiers:
            - "xky"
    - name: "Index Heure Creuse"
      state_topic: "homeassistant/xky/xky-id"
      value_template: "{{ value_json['EASF02'] }}"
      unique_id: xky.EASF02
      unit_of_measurement: "Wh"
      device_class: energy
      state_class: total_increasing
      device:
        identifiers:
            - "xky"
    - name: "Index Injection"
      state_topic: "homeassistant/xky/xky-id"
      value_template: "{{ value_json['EAIT'] }}"
      unique_id: xky.EAIT
      unit_of_measurement: "Wh"
      device_class: energy
      state_class: total_increasing
      device:
        identifiers:
            - "xky"
    - name: "Tension Instantanee"
      state_topic: "homeassistant/xky/xky-id"
      value_template: "{{ value_json['URMS1'] }}"
      unique_id: xky.URMS1
      unit_of_measurement: "V"
      device_class: voltage
      device:
        identifiers:
            - "xky"
    - name: "Intensite Instantanee"
      state_topic: "homeassistant/xky/xky-id"
      value_template: "{{ value_json['IRMS1'] }}"
      unique_id: xky.IRMS1
      unit_of_measurement: "A"
      device_class: current
      device:
        identifiers:
            - "xky"
    - name: "Type Abonnement"
      state_topic: "homeassistant/xky/xky-id"
      value_template: "{{ value_json['NGTF'] }}"
      unique_id: xky.NGTF
      device:
        identifiers:
            - "xky"
    - name: "ContactSec"
      state_topic: "homeassistant/xky/xky-id"
      value_template: >
        {% if value_json['EContactSec'] == 1 %}
          {{ "Ouvert" }}
        {% else %}
          {{ "Ferme" }}
        {% endif %}
      unique_id: xky.EContactSec
      device:
        identifiers:
            - "xky"
    - name: "Depassement puissance"
      state_topic: "homeassistant/xky/xky-id"
      value_template: >
        {% if value_json['EDepassement'] == 1 %}
          {{ True }}
        {% else %}
          {{ False }}
        {% endif %}
      unique_id: xky.EDepassement
      device:
        identifiers:
            - "xky"
    - name: "Sens"
      state_topic: "homeassistant/xky/xky-id"
      value_template: >
        {% if value_json['ESensEnergie'] == 1 %}
          {{ "Producteur" }}
        {% else %}
          {{ "Consommateur" }}
        {% endif %}
      unique_id: xky.ESensEnergie
      device:
        identifiers:
            - "xky"
    - name: "Courbe charge point N"
      state_topic: "homeassistant/xky/xky-id"
      value_template: "{{ value_json['CCASN'] }}"
      unique_id: xky.CCASN
      unit_of_measurement: "W"
      device_class: power
      device:
        identifiers:
            - "xky"
    - name: "Courbe charge point N-1"
      state_topic: "homeassistant/xky/xky-id"
      value_template: "{{ value_json['CCASN-1'] }}"
      unique_id: xky.CCASN-1
      unit_of_measurement: "W"
      device_class: power
      device:
        identifiers:
            - "xky"
    - name: "Message"
      state_topic: "homeassistant/xky/xky-id"
      value_template: "{{ value_json['MSG1'] }}"
      unique_id: xky.MSG1
      device:
        identifiers:
            - "xky"
    - name: "RSSI"
      state_topic: "homeassistant/xky/xky-id"
      value_template: "{{ value_json['RSSI'] }}"
      unique_id: xky.RSSI
      unit_of_measurement: dBm
      device_class: signal_strength
      entity_category: diagnostic
      device:
        identifiers:
            - "xky"
Et ça me permet de récupérer les infos dans HA :
Capture HA

Merci Gael,

Je suis en configuration Historique (alors que toi tu es en mode standard si on parle bien de la même chose...)
Je ne sais si cela a une incidence sur la configuration MQTT.

J'ai démonté le Winky et me suis connecté sur son hotspot wifi.

J'ai activé le MQTT, mais pour le reste, je ne sais pas quoi mettre pour
Url actuelle, User Actuel, Password Actuel, Topic Actuel

Je n'ai pas essayé de recopier ta configuration dans mon configuration.yaml
Vu toutes les questions que je me pose, je pense que ça ne fonctionnera pas tel quel.
D'ailleurs dans cette configuration yaml, il y a peut des champs que je dois remplacer ou puis-je vraiment la recopier tel quel? (avec mon user xky?)

J'ai vu qu'il y aussi une config influxdb avec un token. Est-ce possible d'utiliser cette configuration dans Home Assistant pour récuperer les données?

Je rame sévère.

Pour le MQTT, il faut mettre l'adresse IP de ton broker.

Pour le user et le mot de passe tu peux mettre guest et guest si tu n'as pas activé l'identification sur ton broker.

Pour le topic, je laisse les experts Ha répondre (il faut qu'un jour je me penche dessus ^^)

Pour la partie InfluxDB, il ne faut pas enlever les informations déjà mise car sinon les données ne remonteront plus sur le serveur de l'expérimentation. Par contre, si vous voulez, je peux regarder pour modifier le soft pour avoir la possibilité d'envoyer sur 2 InfluxDB en même temps.

Jérôme

Ok, je vais attendre une réponse d'un expert HA pour la partie topic.

Pour la partie InfluxDB, je ne voulais pas modifier la configuration du winky car j'ai bien compris que c'est ce qui permet d'alimenter le dashboard Grafana. Mais je me disais qu'il était peut-être possible d'utiliser le même token et l'url https://influxdb-ote.univ-grenoble-alpes.fr/ pour que HA arrivent à accéder aux mêmes données que Grafana. Si ce n'est pas le cas, je veux bien une modification du soft pour que ce soir possible.

Merci à tous.

Pas de souci. C'est une version C6 ou esp8266 que tu as comme ça on test d'abord avant de déployer chez tout le monde.

PrécédentPage 3 of 3