Bonjour et bonne année à tous !
Mon problème
J’utilise un ESP8266 sous ESPHome associé à un PITInfo pour récupérer les données de mon compteur Linky. Mai je suis sujet à des pertes de données ou données tronquées. Par exemple, il arrive fréquemment que j’ai une valeurs enregistrée de 214.123, puis 14.124, puis 214.125 (valeurs inexactes, juste pour démonstration). La trame du milieu est tronquée du premier chiffre. Ceci arrive indépendamment sur HC, HP ou total.
Ma configuration
ESPHome Device Builder
Version actuelle : 2025.12.4
En palliatif, j’ai mis un petit lambda pour ne pas prendre en compte les valeurs inférieures aux valeurs précédentes, mais ce n’est qu’une parade valable que sur les valeurs s’incrémentant sans cesse.
# Liaison série
uart:
id: uart_bus
rx_pin: GPIO3 # Pin Rx
baud_rate: 9600
parity: EVEN
data_bits: 7
stop_bits: 1
teleinfo:
update_interval: 5s
historical_mode: false
# Status Binary Sensor
binary_sensor:
- platform: status
name: "Status"
sensor:
# Énergie active soutirée totale
- platform: teleinfo
tag_name: "EAST"
name: "Energie totale"
unit_of_measurement: kWh
device_class: energy
state_class: total_increasing
accuracy_decimals: 3
filters:
- multiply: 0.001
- lambda: |-
static float last = 0;
if (x < last) return last;
last = x;
return x;
# Energie active soutirée Fournisseur, index 01
- platform: teleinfo
tag_name: "EASF01"
name: "Energie HC"
unit_of_measurement: kWh
device_class: energy
state_class: total_increasing
accuracy_decimals: 3
filters:
- multiply: 0.001
- lambda: |-
static float last = 0;
if (x < last) return last;
last = x;
return x;
# Energie active soutirée Fournisseur, index 02
- platform: teleinfo
tag_name: "EASF02"
name: "Energie HP"
unit_of_measurement: kWh
device_class: energy
state_class: total_increasing
accuracy_decimals: 3
filters:
- multiply: 0.001
- lambda: |-
static float last = 0;
if (x < last) return last;
last = x;
return x;
Est-ce que vous avez des pistes pour améliorer tout cela ?
Mon montage est assez rudimentaire : fils volants entre PITInfo et ESP, mais la distance n’est que de 2-3 cm. Même si je perds quelques trames à cause de parasites ou autre, normalement le CRC/Cheksum des trames devrait ignorer la trame et non me renvoyer une valeur aberrante.
Donc je pose la question à la commu : que faire pour fiabiliser tout cela ?
En espérant que cela soit dans la bonne rubrique…




