Eky – Projet Open-Source pour Linky avec Ethernet

Eky – Projet Open-Source pour Linky avec Ethernet

20 juillet 2023 2 Par Théo Cateland

Bonjour à tous,

Aujourd’hui, je vous présente une nouvelle version du projet xKy permettant la transmission de télé-informations à partir de la prise TIC des compteurs Linky. A ce jour de nombreuses solutions industrielles ou open-source existent, vous pouvez retrouver un comparatif ici. Néanmoins, il faut prendre en compte que la solution parfaite n’existe pas et intégrer les barrières rencontrées par les utilisateurs. Par exemple, si l’utilisateur possède un compteur Linky à l’extérieur de son habitation, il s’orientera plus sur un module utilisant le Wi-Fi ou LoRa. A l’inverse, si ces protocoles réseaux sont absents ou pas adaptés, le réseau Ethernet devient plus pertinent. Développé au cours des deux derniers mois, l’extension Ethernet permet de surveiller sa consommation d’électricité via Jeedom.

Pour information, cet article exceptionnellement n’est pas un tutorial, celui-ci viendra très prochainement.

Préambule

Comme d’habitude, ce projet est sous la licence CC-BY-NC-SA 4.0

Ce projet est aussi supporté par les entités suivantes CNRS/UGA/G-INP – G2ELAB dans le cadre de l’Observatoire de la Transistion Energétique.

Vous pourrez aussi récupérer tous les fichiers pour recréer votre eKy (Code, PCB et STL) sur le Gitlab du Gricad à l’adresse suivante:

https://gricad-gitlab.univ-grenoble-alpes.fr/ferrarij/eky

Si vous voulez participer activement à l’amélioration du projet mais aussi participer en tant que candidat aux expériences du laboratoire, n’hésitez pas à nous contacter au travers de l’OTE

https://ote.univ-grenoble-alpes.fr/

Maintenant que les présentations sont faites, nous pouvons partir au cœur du sujet.

Fonctionnalités attendus :

Actuellement, les données du Linky accessibles via le portail d’Enedis ne donnent que les données des courbes de charge de la veille avec un pas de 30 min. Cependant, nous pouvons utiliser la prise TIC pour les obtenir en temps réel. C’est pour cela que nous avons choisi de construire un système pouvant retranscrire ces données et les envoyer à un serveur personnel et ainsi permettre aux utilisateurs ou aux organisations de mieux gérer leur consommation.

L’extension devra s’adapter à plusieurs critères :

  • Utilisable en mode standard ou historique (respectivement 9600 et 1200 bauds).
  • Récupère les informations à partir de la prise télé-information client TIC du Linky.
  • Envoie ses informations via Ethernet vers un serveur d’application (Jeedom) pour visualiser les données.
  • Utilise l’Over The Air (OTA) pour effectuer la configuration du broker MQTT et les mises à jour.

Le compteur Linky et sa prise TIC

Le compteur Linky dispose d’une sortie de télé-information client (prise TIC) décomposée en deux sous-circuits. Un circuit « alimentation » via les bornes A (Alimentation) et I1 (Commun) puis un circuit « informations » via les bornes I1 et I2 (Information)

Le circuit « Alimentation » délivre une puissance de 130 [mW] minimum, 6 [V] efficace (± 10% à 50 [kHz]) et 12 [V] crête. Le second circuit « Informations » diffuse de manière continue un signal binaire à 50 [kHz] (± 3%) unidirectionnel, sa logique binaire est négative, autrement dit quand la porteuse est présente, le signal est nul et à l’inverse, il est unitaire. L’ensemble des informations transmises informent sur 23 groupes de renseignements en monophasé et 28 en triphasé quand le Linky est en mode Historique. Lorsque ce dernier est en mode Standard, il diffuse respectivement 59 et 74 données différentes et à un débit distinct.

Le mode historique est comme son nom l’indique, utilisé pour fonctionner comme les anciens compteurs électroniques blancs datant des années 1990, à 1200 bauds (bps) et les trames d’information sont sans horodatage. Le mode standard quant à lui s’adapte à son époque et diffuse (au maximum) 8 fois plus de données avec un débit de 9600 bauds et la présence d’un horodatage sur certaines étiquettes.

Les Tableau 1 à 3 ci-dessous décrivent l’ordre d’émission des informations en mode Standard et Historique pour la programmation et la sélection des données désirées.

Concernant les paramètres techniques du compteur Linky, vous pouvez les retrouver dans la datasheet officielle fournie par ENEDIS.

Matériel :

Support Microcontrôleur :

  • ESP-12E ou ESP12-F, ESP8266 Dev Board
  • Résistance 10k [Ω]

Support Adaptateur FTDI-ESP12E/F :

  • FTDI FT323RL
  • 3 Résistances 10k [Ω]

Support TIC :

  • Optocoupleur PC814
  • MOSFET BS170
  • Résistance 220 [Ω]
  • Résistance 3k [Ω]
  • Résistance 10k [Ω]
  • Shield Ethernet W5500

Informations supplémentaires :

Optocoupleur :

Avec toutes les spécifications données par la datasheet, on doit démoduler les signaux ASK de InfoTIC. Le moyen le plus efficace actuellement est de profiter d’un optocoupleur pour effectuer ce travail :

Ce schématique est familier à quiconque a une fois travaillé avec le TIC que ce soit le Linky ou la génération précédente. Pour les personnes peu familières avec ce moyen de démodulation, vous pouvez en savoir plus à ce sujet dans cet article de Charles.

Schéma de câblage :

Pinout des différents composants :

ESP8266 Dev Board
ESP12E/F
Shield Ethernet W5500

Support ESP12E/F :

Le microcontrôleur ne possède pas de broches externes, il faut donc lui créer un support adapté.

Schéma PCB du support ESP12E/F
Support ESP12E/F

Adaptateur FTDI-ESP12E/F :

Les ESP12E et ESP12F ne possèdent pas d’entrée USB afin de téléverser des programmes. Afin de flasher le microcontrôleur de manière automatique, un adaptateur est créé :

https://circuitjournal.com/esp8266-with-arduino-ide

Les résistances sécurisent le montage en cas de problèmes.

Schéma de câblage de l’adaptateur FTDI-ESP12E/F
Schéma PCB (V3) de l’adaptateur FTDI-ESP12E/F

Voilà à quoi ressemble notre premier prototype d’adaptateur pour téléverser sur un ESP12F.

Support TIC :

La première version utilise l’ESP8266 dev board afin d’utiliser sa sortie USB pour avoir un retour sur l’interface IDE d’Arduino et pour alimenter toute la passerelle via l’ordinateur. Dans notre cas, le Winky (même projet mais utilisant le protocole Wifi) sert de base pour décoder les informations de la prise TIC. Il peut être remplacé par le circuit optocoupleur vu plus haut. Le câblage est en majorité issu de nopnop2002.

Schéma de câblage de ESP8266 – W5500 – TIC

La seconde version utilise un microcontrôleur bien plus compact une fois que le montage fonctionne en symbiose avec le programme, un ESP12E (ou ESP12F). Ainsi en couplant chaque essai, informations et prototypes, la version finale se dessine petit à petit.

Schéma de câblage de ESP12E – W5500 – TIC
Schématique de l’Eky (V3)
Schéma PCB (V3) de la board

Programmation :

Vous retrouverez ici les différentes versions sur le Gitlab en suivant ce lien :

https://gricad-gitlab.univ-grenoble-alpes.fr/ferrarij/eky/-/tree/main/Software

Il est issu de la version Wi-Fi à laquelle est adaptée la version Ethernet.

Cette version est capable de lire la version Historique et Standard de la TIC.

Interface Utilisateur :

Il existe différentes plateformes permettant de visualiser ses données en temps réel. Vous retrouverez ici une grande partie des applications disponible aujourd’hui.

De notre côté, c’est l’application Jeedom qui est utilisée, elle est disponible gratuitement et est open source. Sa méthode d’installation sur Raspberry Pie est disponible ici, sa configuration ci-dessous.

Une fois configuré, il est possible d’observé toutes les informations envoyées en temps réel de manière listé ou dans un style plus graphique.

Vous voilà maintenant en mesure de récupérer et visualiser votre consommation d’énergie électrique en temps réel via le réseau Ethernet. C’est une solution autonome avec la possibilité de mettre à jour son programme par l’OTA mais possède une alimentation externe. Étant donné que la prise TIC peut fournir une puissance de 130 [mW], il faudrait essayer d’utiliser cette énergie pour auto-alimenter la passerelle. En espérant que le sujet vous a plus, n’hésitez pas à partager vos retours, problèmes et améliorations !

Eky V1
Eky V3

Théo Cateland et Jérôme Ferrari