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 . 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
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.
Merci @Jcpas, @oncleben31, @Makai et @djtef
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
Pas de problème, c’est grâce à ce post que j’ai pu le faire aussi donc merci à toi
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.
J’ai installé influxDB et pour l’instant je n’ai pas encore assez de données mais j’ai pu voir la mise en route de ma PAC
@Jcpas, je te tiens au courant si j’arrive à faire un graph via Grafana de la conso en VA.
Bonjour à tous!
Cherchant une alternative à l’intégration Linky je me suis lancé dans le projet de mettre en place un système de récupération de Téléinfo via wifi il y a quelques semaines. Le temps que tous les composants arrivent, j’ai attaquer le montage hier sur breadboard (les PCB sont en route…).
Mon objectif étant de claquer le bazard dans le tableau électrique tout en utilisant HA j’ai principalement suivi ces deux guides:
https://www.canaletto.fr/post/home-assistant-esp-and-teleinfo
https://forum.jeedom.com/viewtopic.php?f=185&t=21758&sid=7888443669e19baa7f8e33f03ec72b24
Après quelques déboires avec une LED montée à l’envers le système est opérationnel et remonte bien toutes les infos dans HA.
Si à la lecture des deux liens ci-dessus il y a des questions qui vous viennent profitez en tant que j’ai encore tout dans la tête…
@Jcpas, c’est un truc comme ça que tu voudrais My Canaletto | Home Assistant, ESP & Téléinfo
C’est vrai que les graphiques sont classes :
Je ne connais pas utility_meter
, tu pourrais partager ta config que j’essaie de mon côté pour tester avec mes sensors ?
C’est assez simple d’utiliser utiliser utility_meter.
Bien évidemment, les sensors à reprendre sont ceux qui sont déclarés dans les templates.
Le code ci-dessous génère de nouveaux sensors qui reprennent les données cumulées en fonction du cycle défini.
A noter que, toujours à cause de cette fichue LED, j’ai appelé hier après-midi le fournisseur d’electricité pour passer en mode TIC Standard du coup j’ai plus rien depuis 0h00…
Je dois rappeler demain pour repasser en mode Historique…
Mais je sais que ça fonctionne , j’ai eu toutes les remontées attendues avant ce changement de mode de TIC.
Du coup j’ai pas trop eu l’occasion de vérifier toute l’intégration dans HA mais y a pas de raison…
utility_meter:
hourly_energy_consumption:
source: sensor.teleinfo_energy
cycle: hourly
daily_energy_consumption:
source: sensor.teleinfo_energy
cycle: daily
weekly_energy_consumption:
source: sensor.teleinfo_energy
cycle: weekly
monthly_energy_consumption:
source: sensor.teleinfo_energy
cycle: monthly
hourly_energyhp_consumption:
source: sensor.teleinfo_energyhp
cycle: hourly
daily_energyhp_consumption:
source: sensor.teleinfo_energyhp
cycle: daily
weekly_energyhp_consumption:
source: sensor.teleinfo_energyhp
cycle: weekly
monthly_energyhp_consumption:
source: sensor.teleinfo_energyhp
cycle: monthly
hourly_energyhc_consumption:
source: sensor.teleinfo_energyhc
cycle: hourly
daily_energyhc_consumption:
source: sensor.teleinfo_energyhc
cycle: daily
weekly_energyhc_consumption:
source: sensor.teleinfo_energyhc
cycle: weekly
monthly_energyhc_consumption:
source: sensor.teleinfo_energyhc
cycle: monthly
Voici ma config d’utility_meter :
# utility_meter
utility_meter:
consommation_heure:
source: sensor.puissance
cycle: hourly
consommation_jour:
source: sensor.puissance
cycle: daily
consommation_semaine:
source: sensor.puissance
cycle: weekly
consommation_mois:
source: sensor.puissance
cycle: monthly
consommation_annee:
source: sensor.puissance
cycle: yearly
Mon sensor c’est celui qui me renvoi la puissance instantanée en VA.
Mais là ma consommation_heure est à 37910 et il est 9h31 donc ça me ferait aux alentours de 75000 par heure
Il ressemble à quoi le template dans lequel tu déclare le sensor.puissance?
C’est mon sensor de mon ESPHome qui me renvoi la puissance instantanée.
Je pense qu’utility_meter fait un cumul alors qu’il faudrait faire une moyenne.
C’est vrai que ça fait bizarre 128360 VA, j’ai l’impression d’habiter dans une centrale nucléaire :
Mais vos sensors mesurent la puissance soutirée là non? Pas la consommation?
https://fr.wikipedia.org/wiki/Voltamp%C3%A8re
Regardez les sensors ci-dessous qui viennent du site de Canaletto.https://www.canaletto.fr/post/home-assistant-esp-and-teleinfo
Il y a un sensor puissance ET des sensors de consommation (HC / HP / HC+HP).
En tout cas chez moi ça fonctionne comme ça…
#### Teleinfo attributes from Wemos_PitInfo
#
- platform: template
sensors:
#
# Power
teleinfo_puissance:
value_template: '{{ state_attr("sensor.wemos_pitinfo","ENERGY").Power }}'
unit_of_measurement: "W"
#
# EnergyHC
teleinfo_energyhc:
value_template: '{{ state_attr("sensor.wemos_pitinfo","ENERGY").HCHC }}'
unit_of_measurement: "Wh"
#
# EnergyHP
teleinfo_energyhp:
value_template: '{{ state_attr("sensor.wemos_pitinfo","ENERGY").HCHP }}'
unit_of_measurement: "Wh"
#
# Energy Total + attr HP/HC
teleinfo_energy:
value_template: '{{ state_attr("sensor.wemos_pitinfo","ENERGY").HCHC + state_attr("sensor.wemos_pitinfo","ENERGY").HCHP }}'
unit_of_measurement: "Wh"
attribute_templates:
Index HP: >-
{{ state_attr("sensor.wemos_pitinfo","ENERGY").HCHP }}
Index HC: >-
{{ state_attr("sensor.wemos_pitinfo","ENERGY").HCHC }}
@Antoine1, le problème est que dans les trames récupérées, je ne vois pas cette info :
[06:01:08][E][teleinfo:036]: bad crc: got 59 except 56
[06:01:10][D][sensor:092]: 'ADCO': Sending state xxxxxxxxxxx.00000 with 0 decimals of accuracy
[06:01:10][D][sensor:092]: 'Intensité souscrite': Sending state 45.00000 A with 0 decimals of accuracy
[06:01:10][D][sensor:092]: 'Index': Sending state 21651.81250 kWh with 0 decimals of accuracy
[06:01:10][D][sensor:092]: 'Intensité': Sending state 12.00000 A with 0 decimals of accuracy
[06:01:10][D][sensor:092]: 'Intensité maximale': Sending state 90.00000 A with 0 decimals of accuracy
[06:01:10][D][sensor:092]: 'Puissance': Sending state 2870.00000 VA with 0 decimals of accuracy
[06:01:12][D][sensor:092]: 'ADCO': Sending state xxxxxxxxxxx.00000 with 0 decimals of accuracy
[06:01:12][D][sensor:092]: 'Intensité souscrite': Sending state 45.00000 A with 0 decimals of accuracy
[06:01:12][D][sensor:092]: 'Index': Sending state 21651.81250 kWh with 0 decimals of accuracy
[06:01:12][D][sensor:092]: 'Intensité': Sending state 12.00000 A with 0 decimals of accuracy
[06:01:12][D][sensor:092]: 'Intensité maximale': Sending state 90.00000 A with 0 decimals of accuracy
[06:01:12][D][sensor:092]: 'Puissance': Sending state 2890.00000 VA with 0 decimals of accuracy
[06:01:13][D][sensor:092]: 'WiFi Signal Sensor': Sending state -80.00000 dB with 0 decimals of accuracy
[06:01:14][D][sensor:092]: 'ADCO': Sending state xxxxxxxxxxx.00000 with 0 decimals of accuracy
[06:01:14][D][sensor:092]: 'Intensité souscrite': Sending state 45.00000 A with 0 decimals of accuracy
[06:01:14][D][sensor:092]: 'Index': Sending state 21651.81250 kWh with 0 decimals of accuracy
[06:01:14][D][sensor:092]: 'Intensité': Sending state 12.00000 A with 0 decimals of accuracy
Et le firmware de Canaletto est un firmware Tasmota pas ESPHome. Tu utilises Tasmota ?
Avec @Jcpas, on utilise le composant teleinfo qui (je l’espère) sortira un jour avec ESPHome (stable) mais qui est pour l’instant en dev.
Je viens de tomber sur ça dans la doc ESPHome (dev) :
# Example configuration entry
uart:
id: uart_bus
rx_pin: GPIO3
tx_pin: GPIO1
baud_rate: 1200
parity: EVEN
data_bits: 7
sensor:
- platform: teleinfo
tags:
- name: "HCHC"
sensor:
name: "hchc"
unit_of_measurement: "Wh"
icon: mdi:flash
- name: "HCHP"
sensor:
name: "hchp"
unit_of_measurement: "Wh"
icon: mdi:flash
- name: "PAPP"
sensor:
name: "papp"
unit_of_measurement: "VA"
icon: mdi:flash
update_interval: 60s
historical_mode: true
Je vais essayer de l’ajouter à mon code de l’ESP32 puis upload, on verra si ça me rajoute les Wh
…
J’ai ajouté ce bout de yaml à la fin du bloc tags
mais ESPHome (dev) ne voulait pas compiler car name
n’était pas conforme ([name] is an invalid option for [6]. Did you mean [tag_name] ?
):
- name: "HCHC"
sensor:
name: "hchc"
unit_of_measurement: "Wh"
icon: mdi:flash
- name: "HCHP"
sensor:
name: "hchp"
unit_of_measurement: "Wh"
icon: mdi:flash
J’ai donc changé name:
par tag_name:
. Il a accepté de compiler mais pas de trames HCHC ou HCHP visible dans les logs.
Pourtant j’ai vérifié, je suis bien en mode historique
sur mon compteur et via le menu du linky, je vois bien ces 2 infos (HCHC & HCHP)
Je sèche …