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.




