Intégration du module Wes V2 de la société Cartelectronic

Bonjour,

Je recherche des informations sur l’intégration du module Wes V2 de Cartelectronic dans HA.

Dans un premier temps, je recherche en priorité le moyen de remonter dans HA les informations des sondes de températures 1-wire.

Si quelqu’un a un retour d’expériences …

Cordialement,

Il y a @epenet qui a bosser sur l’intégration officiel 1-wire. Si il passe par là.

Je n’ai pas de module Wes, mais à mon avis il doit intégrer un moteur OWFS.

Dans un premier temps, tu peux essayer de l’ajouter directement dans HA en utilisant l’adresse IP et le port par défaut 4304. (cf. 1-Wire - Home Assistant)

Sinon, il faudrait voir avec cartelectronic pour vérifier s’ils utilisent bien OWFS, et s’il est possible de le rendre disponible sur le LAN

Perso j’ai parsé les infos qui m’intéressaient.

configuration.yaml :

sensor:
  - platform: rest
    name: weshomeval
    resource: http://192.168.1.80/WEBPROG/CGX/homeval.CGX
    method: GET
    authentication: basic
    username: admin
    password: wes
    json_attributes_path: "$.form"
    json_attributes:
      - "array"
      - "bssw"
      - "java"
      - "html"
    value_template: 'OK'
  - platform: template
    sensors:
       wesheurecreuseraw :
        value_template: >-
            {{ states.sensor.weshomeval.attributes["html"][5]["value"] }}
       wesheurecreuse :
        friendly_name: wes_tarif_HC
        value_template: >-
          {% if states('sensor.wesheurecreuseraw') == 'H. Creuses' %} 
              1
          {% else %} 
              0
          {% endif %}
       wespcewatt :
        friendly_name: wespcewatt
        value_template: >-
             {{ states.sensor.weshomeval.attributes["array"][2]["value"] }}
       wesvewatt :
        friendly_name: wes_VE_Watt
        device_class : power
        unit_of_measurement: 'W'
        value_template: >-
             {{ (states('sensor.wespcewatt').split(",")[1]) }}
       wesgeneralwatt :
        friendly_name: wes_general_Watt
        device_class : power
        unit_of_measurement: 'W'
        value_template: >-
             {{ (states('sensor.wespcewatt').split(",")[2]) }}
       wesgaragewatt :
        friendly_name: wes_garage_Watt
        device_class : power
        unit_of_measurement: 'W'
        value_template: >-
             {{ (states('sensor.wespcewatt').split(",")[3]) }}
       weslocalpiscinewatt :
        friendly_name: wes_localpiscine_Watt
        device_class : power
        unit_of_measurement: 'W'
        value_template: >-
             {{ (states('sensor.wespcewatt').split(",")[4]) }}
       wesrl1 :
        friendly_name: wesrl1
        value_template: >-
              {{ states.sensor.weshomeval.attributes["bssw"][0]["value"] }}
       wessw :
        friendly_name: wes_switch_virtuel
        value_template: >-
             {{ states.sensor.weshomeval.attributes["java"][74]["value"] }}
       wessw1 :
        friendly_name: wes_switch_virtuel_1_VE_Now
        value_template:  "{{ ((states('sensor.wessw') | float ) - (states('sensor.wessw') | float // 2 * 2)) | int }}"
       wessw2 :
        friendly_name: wes_switch_virtuel_2_VE_HC
        value_template:  "{{ (((states('sensor.wessw') | float ) - (states('sensor.wessw') | float // 4 * 4)) // 2 ) | int }}"
       wessw3 :
        friendly_name: wes_switch_virtuel_3_VE_Surplus
        value_template:  "{{ (((states('sensor.wessw') | float ) - (states('sensor.wessw') | float // 8 * 8)) // 4 ) | int }}"
        
  - platform: rest
    name: westic
    resource: http://192.168.1.80/tic1.cgx
    method: GET
    authentication: basic
    username: admin
    password: wes
    json_attributes_path: "$.data"
    json_attributes:
      - "tic1"
    value_template: 'OK'
  - platform: template
    sensors:
      westichp :
        friendly_name: wes_tic_hp
        device_class : power
        unit_of_measurement: 'Wh'
        value_template: >-
             {{ states.sensor.westic.attributes["tic1"]["HCHP"] | float  }}
      westichc :
        friendly_name: wes_tic_hc
        device_class : power
        unit_of_measurement: 'Wh'
        value_template: >-
             {{ states.sensor.westic.attributes["tic1"]["HCHC"]| float }}
      westicinj :
        friendly_name: wes_tic_injection
        device_class : power
        unit_of_measurement: 'Wh'
        value_template: >-
             {{ states.sensor.westic.attributes["tic1"]["INJECTION"]| float }}
      westiciinst :
        friendly_name: wes_tic_i_instantanne
        device_class : power
        unit_of_measurement: 'A'
        value_template: >-
             {{ states.sensor.westic.attributes["tic1"]["IINST"]| float }}
      westension :
        friendly_name: wes_tic_tension
        device_class : power
        unit_of_measurement: 'V'
        value_template: >-
             {{ states.sensor.westic.attributes["tic1"]["TENSION1"]| float }}

Merci pour le retour d’info Flavien …

En regardant les fichiers , je pense que le S1WVCFG.cgx devrait contenir tes températures.
Mais impossible de vérifier , je n’ai pas de 1WIRE connecté

Bonjour à vous,

je suis tout nouveau sur Homeassistant (j’arrive de Jeedom). J’ai installé le système il y a quelques minutes seulement sur un vieux RPI3 que j’avais dans un carton pour commencer à faire des tests.
J’ai également un serveur WES et j’aimerais savoir comment créer le script, les probables variables (ce que je suppose être les « frendly_name »), puis les afficher quelque part sur homeassistant.
Existe -t-il un tuto quelque part sur ce sujet spécifique (script + parsing dans les variables) ?

Merci d’avance.
David

Bonjour à tous, et bonjour @flavien
Je me permet de déterrer ce topic, car je me lancer dans HA et je dispose d’un WES.

J’aimerais dans le futur pouvoir automatiser certaines choses, et aussi faire des calcul de prévisions de cout pour l’elec et le gaz, chose que je fais deja avec un excel en exportant des données.

Néanmoins dans un premier temps je souhaite à minima tenter d’afficher dans HA les même infos que dans le WES, à savoir :

  • Puissance en W consommée
  • m3 de gaz instantanée, et cumulé.

Je ne trouve pas ces infos dans les différents fichier CGX du wes,
Est ce que quelqu’un pourrait m’aider à y voir plus clair ?
D’avance merci
Bonne journée

Bonjour,

J’ai démonté mon Wes mais de mémoire tu dois pouvoir trouver les infos dans le fichier data.cgx.

Je captais par exemple la température de la sonde 1 dans HA avec le code suivant.

- platform: rest
  name: Wes_Sonde_1
  scan_interval: 60
  resource: http://admin:wes@192.168.1.110/DATA.CGX
  unit_of_measurement: '°C'
  value_template: '{{ value_json["data"]["temp"]["SONDE1"] }}'

Pour ma part, je remontais les données brutes et je faisait les calculs dans HA.

Salutations

Akoua

Je te remercie pour ta réponse, j’ai un peu avancé hier, je pense avoir compris la logique,
je pense que ce qu’il me manque c’est la compréhension des variables dans les fichiers du WES, surtout le fichier homeval.cgx

Par exemple, dans le code de Flavien , je ne comprend pas du tout, les sensors utilisés ici :

Par contre je ne connaissais pas la commande scan_interval, très interessant :slight_smile:

Merci

Dans la première partie du code , on recupère le json filtré sur quelques termes et on le « stocke » dans la variable « weshomeval »

Dans la seconde partie , on parse le « weshomeval »

states.sensor.weshomeval = tout le json
states.sensor.weshomeval.attributes[« array »] = JSON filtré sur les paragraphes « array »
states.sensor.weshomeval.attributes[« array »][2] = JSON filtré sur le 3eme paragraphes « array » ( car on compte a apartir de 0)
states.sensor.weshomeval.attributes[« array »][2][« value »] = on prends la « value » du JSON filtré sur le 3eme paragraphes

Merci pour ta réponse :slight_smile:

J’avais trouvé depuis mais pas mis à jour le fil de discussion.

Bonjour à tous

venant de basculer de jeedom je me suis servi de vos exemples pour avancer. Donc merci. l’intégration directe du WES est plus simple que de garder Jeedom en passerelle via MQTT

J’utilise pour l’intégration non pas DATA.CGX mais DATA_JEEDOM.CGX (qui avait été déposé sur le WES par le plugin WES Control de Jeedom). le fichier est un peu plus « simple » et lisible il est disponible sur le GIT du plugin Jeedom.

bien entendu le fichier d’origine est tout a fait exploitable avec la même solution.

Coté HA j’utilise l’intégration HACS « multiscraper » pour capturer tous les sensors en un appel.

Dans mon fichier de configuration principal :

image

Le fichier déclarant les sondes

image

et tout fonctionne

il ne reste qu’à multiplier la configuration et valider les unités.

Christophe

1 « J'aime »