Téléinfo via wifi

Bon, j’ai voulu installé ESPhome de DEV mais il faut installé Visual Studio C++ et là … j’ai pas les droits (je voulais l’installer sur le PC du boulot qui était sous Win10, :zipper_mouth_face: faut pas le dire…)
Donc pas possible… :sob:

Je me posais la question, est-ce qu’il existe une image Docker ESPHome-dev que l’on pourrait installer en parallèle de ESPHome sur le Docker de HA ?

Sinon, va falloir que je squatte le PC de madame qui est sous Debian…

Je vois pas pourquoi t’as besoin de visual studio, t’as rien à développer, juste à l’installer. Je répète, je n’ai fait que les étapes citées ci-dessus et ça fonctionne sans problème.

Tu dois pouvoir directement utiliser la bonne branch GitHub directement dans le code ESPHome de ton ESP avec :

esphome:
  name: xxxx
  platform: ESP8266
  board: xxxx
  esphome_core_version:
    branch: nom_de_la_branch

Ah mais je crois que je comprends, t’as pas d’environnement Linux en ligne de commande genre MinGW ou Mobaxterm ? Sinon installe git pour Windows par exemple (ça te servira toujours) et t’auras Git Bash. Tu pourras lancer les commandes Linux depuis Windows.

T’es sûr que ça fonctionne toujours ? Sur le site je vois :

esphome_core_version has been removed - ESPHome is no longer split up in the core and python repository.

Je suis passer par git bash et depuis le répertoire esphome-dev, j’ai exécuter :

script/setup

J’ai bien vu les lignes de commande d’installation pip3, donc il m’a bien interprété le script setup.

ça marche ça ??

ça serait si simple … :sob:

Oui c’est possible. Il y a dépôt a ajouté dans ta liste d’addon dans HA et tu peux choisir entre stable, beta et dev.

@oncleben31, et on peut avoir les 2 en parallèles ?

Utiliser ESPHome-dev QUE pour compiler un firmware de dev sur mon ESP32 et qu’il soit ensuite visible sous ESPHome pour l’OTA ?

Ou j’ai pas bien compris le périmètre de ESPHome … :thinking:

je sais pas mais teste. Tu nous diras.
Mais je suis pas convaincu d’avoir deux versions en // La version dev te permettra de faire de l’OTA aussi.

Super :grin:, si je pètes mon install, faut que je réinstall tout :clap:

On va :crossed_fingers:et installer ça cette après midi…
Je vous tiens au courant

Tu peux mais faut stopper le stable avant de lancer le dev et inversement

Je n’arrive pas à trouver l’URL du repository dev, @oncleben31, tu n’aurais pas ça ?

Et c’est bien dans Supervisor > Add-on Store > 3 points en haut à droite > Repositories > 'Add repository` qu’il faut ajouter l’URL de ce repository de dev ?

C’est ça.

Oui mais tu va gagner des points d’expérience :smiling_imp:. Et puis le système de sauvegarde marche très bien avec HassOS.

On peut installer deux versions d’esphome, la dev et la stable, c’est ce que j’ai fait.
Les deux sont lancés en même temps et à priori pas de soucis puisque j’ai pu faire mon OTA.

J’ai installé HA via cette commande de @McFly :

curl -sL « https://raw.githubusercontent.com/McFlyPartages/supervised-installer/master/installer.sh » >> hassio_install.sh
sudo bash hassio_install.sh -m raspberrypi4

J’ai un doute entre HassOS et HA via Docker :thinking:
C’est la même chose ?

Edit : plus besoin d’ESPHome Dev, la téléinfo a été intégrée dans la branche de prod.

Pour faire suite à un de mes messages précédent, voici comment j’ai fait avec un D1 mini et le module téléinfo de Charles Hallard.
Je vais essayé de me rappeler de tout ce que j’ai dû faire, j’espère que je ne vais rien oublier.

1. Installation d’Esphome sur HA
Aller dans supervisor/add-on store et installer ESPHome.

2. Création du nouveau node
Voici le yaml de ma config :

substitutions:
  name: teleinfo

esphome:
  name: ${name}
  platform: ESP8266
  board: d1_mini

wifi:
  ssid: "Jcpas"
  password: "********"

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "Teleinfo Fallback Hotspot"
    password: "********"

web_server:
  port: 80

captive_portal:

# Enable logging
logger:     
  baud_rate: 0   # disable logging via UART, help to avoid numerous crash with ESP_LOGD
  level: INFO   # INFO for less log, put DEBUG to view all the linky's "étiquettes" received  in the logs
  esp8266_store_log_strings_in_flash: False     # recommanded for ESP8266 https://esphome.io/components/sensor/custom.html

# Enable Home Assistant API
api:
  password: "********"

ota:
  password: "********"

# ajout du composant uart pour la communication série avec la sortie TIC du compteur
# GPIO3 = Pin Rx sur Wemos D1
uart:
  id: uart_bus
#  tx_pin: GPIO15
  rx_pin: GPIO3
  baud_rate: 1200
  parity: EVEN
  data_bits: 7

# déclaration des sensors numérique
# les sensors doivent être déclarés dans l'ordre de la fonction lambda
sensor:
  - platform: wifi_signal
    name: "WiFi Signal Sensor"
    update_interval: 60s
    unit_of_measurement: dB
    accuracy_decimals: 0
    force_update: false
    icon: mdi:wifi
  - platform: uptime
    id: uptime_seconds
    name: "Uptime Sensor"
    update_interval: 60s
    unit_of_measurement: s
    accuracy_decimals: 0
    force_update: false
    icon: mdi:timer
  - platform: teleinfo
    tags:
     - tag_name: "ADCO"
       sensor:
        name: "ADCO"
        unit_of_measurement: ""
        icon: mdi:eye
     - tag_name: "BASE"
       sensor:
        name: "Index"
        unit_of_measurement: "kWh"
        icon: mdi:home-analytics
        filters:
          - multiply: 0.001
     - tag_name: "ISOUSC"
       sensor:
        name: "Intensité souscrite"
        unit_of_measurement: "A"
        icon: mdi:information
     - tag_name: "IMAX"
       sensor:
        name: "Intensité maximale"
        unit_of_measurement: "A"
        icon: mdi:information
     - tag_name: "IINST"
       sensor:
        name: "Intensité"
        unit_of_measurement: "A"
        icon: mdi:power-plug
     - tag_name: "PAPP"
       sensor:
        name: "Puissance"
        unit_of_measurement: "VA"
        icon: mdi:flash
    update_interval: 2s
    historical_mode: true

binary_sensor:
  - platform: status
    name: "Status"

switch:
  - platform: restart
    name: "${name} reboot"

text_sensor:
  - platform: template
    name: ${name} - Uptime
    update_interval: 60s
    icon: mdi:clock-start
    lambda: |-
      int seconds = (id(uptime_seconds).state);
      int days = seconds / (24 * 3600);
      seconds = seconds % (24 * 3600);
      int hours = seconds / 3600;
      seconds = seconds % 3600;
      int minutes = seconds /  60;
      seconds = seconds % 60;
      if ( days ) {
        return { (String(days) +"d " + String(hours) +"h " + String(minutes) +"m "+ String(seconds) +"s").c_str() };
      } else if ( hours ) {
        return { (String(hours) +"h " + String(minutes) +"m "+ String(seconds) +"s").c_str() };
      } else if ( minutes ) {
        return { (String(minutes) +"m "+ String(seconds) +"s").c_str() };
      } else {
        return { (String(seconds) +"s").c_str() };
      }

Et on sauvegarde.

3. Téléchargement du binary
Compiler le node à l’aide des 3 petits points.
Une fois la compilation terminée, cliquer sur download binary.

4. Premièr upload sur mon Esp
Brancher l’Esp sur le PC à l’aide d’un cable mini USB.
Pour ma part je suis sous Windows 10, j’ai installé esphome-flasher puis envoyé le binary sur l’Esp.

5. Montage du D1 mini sur le Linky
J’ai donc utilisé mon D1 mini et le module téléinfo.
Voici le montage :



6. Récupération de l’appareil sur HA
Une fois l’Esp branché, HA devrait trouver automatiquement l’appareil.
Il suffit ensuite d’ajouter les infos récupérées sur le Dashboard.

4 « J'aime »

Merci @Jcpas, @oncleben31, @Makai et @djtef :clap: :clap: :clap: :clap:

Bravo à vous pour m’avoir aider à rendre fonctionnelle ma téléinfo, ce fut long mais j’ai enfin des données cohérentes. A voir dans le temps …

Merci encore à vous tous, je vais pouvoir voir mes consos instantanées :grin:

1 « J'aime »

Pas de problème, c’est grâce à ce post que j’ai pu le faire aussi donc merci à toi :wink:
Par contre est-ce que quelqu’un a réussi à voir les infos du style consommation hebdomadaire, consommation journalière, … ?
J’ai testé vite fait utility_meter mais ça me donne des infos incohérentes, j’ai dû passer à côté de quelque chose.