Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mode standard #19

Merged
merged 3 commits into from
Nov 2, 2023
Merged

Mode standard #19

merged 3 commits into from
Nov 2, 2023

Conversation

gduteil
Copy link

@gduteil gduteil commented Oct 9, 2023

Ajout du support du mode standard

guizmo added 3 commits October 3, 2023 22:38
Correction d'affichate du capteur date/heure courante
Ajout d'un capteur par information du registre de statuts
Suppression des "NONUTILE" pour le profil du prochain jour calendrier fournisseur
This was referenced Oct 30, 2023
@hekmon
Copy link
Owner

hekmon commented Nov 2, 2023

Ravi de voir que le coeur de lecture série n'a pas eu besoin de modification :)

J'ai eu une idée : plutôt que d'attendre d'avoir le temps de passer tout cela en revue, je vous propose de merge et de créer la v3 en beta/preview. Ainsi ceux qui le souhaitent peuvent tester le mode standard dès maintenant et cela me laisse le temps... de trouver du temps de m'y mettre sérieusement.

@hekmon hekmon merged commit 93cf8cd into hekmon:main Nov 2, 2023
2 checks passed
@theblackhole
Copy link

theblackhole commented Nov 2, 2023

Bonne idée ! Je pense que je vais faire une demande pour passer au mode standard pour aider à faire des tests. Vu que ça ne fait pas longtemps que j'ai installé mon Linxee, ça ne me dérangerait pas si les données étaient perdues/fausses/plus enregistrées.

Préviens nous quand la v3 beta est disponible au test @hekmon🙂

@gduteil
Copy link
Author

gduteil commented Nov 2, 2023

Ca me parait être une bonne solution, plus simple pour les eventuels testeurs.

Pour info je viens de me rendre compte que le fork n'était plus fonctionnel depuis la dernière MAJ de HA (j'avais ajouté certains sensors en CONFIG).
Je les ai passés en DIAGNOSTIC, je vais faire le pull request

@gduteil
Copy link
Author

gduteil commented Nov 2, 2023

Bonne idée ! Je pense que je vais faire une demande pour passer au mode standard pour aider à faire des tests. Vu que ça ne fait pas longtemps que j'ai installé mon Linxee, ça ne me dérangerait pas si les données étaient perdues/fausses/plus enregistrées.

Préviens nous quand la v3 beta est disponible au test @hekmon🙂

Les entités changent de nom, les anciennes données ne sont plus liées.
La seule solution que j'ai trouvée est de taper directement dans la base SQLite pour changed les IDs , je viens d'ajouter les 4 requêtes que j'ai utilisées ici https://github.com/gduteil/linkytic/wiki/Passage-du-mode-Historique-au-mode-Standard

Faire une sauvegarde de HA avant, on sait jamais ! ;)

@theblackhole
Copy link

Alors si c'est ce que je pense, j'ai déjà eu cette situation récemment avec un nouveau nom d'entités (ajout de "linky" dans le nom des entités) que je voulais fusionner avec l'ancien et ma solution, plutôt que de passer par des commandes SQLite a été, je crois, de supprimer les anciennes entités et renommer les nouvelles en anciennes (ou inversement ?).
Je ne sais plus dans quel sens c'était mais l'action de renommer moi même les entités a fait que HA a merge les anciennes stats avec les nouvelles dans le tableau de bord Energie (la nouvelle entité en elle-même n'a plus les anciennes données mais la donnée "statistique" liée, elle, a rassemblé les 2)

Quand je testerai cette évolution du module, je tâcherai de noter les instructions exactes pour conserver les anciennes données (si ça fonctionne)

@gduteil
Copy link
Author

gduteil commented Nov 3, 2023

Effectivement en supprimant les nouvelles puis en donnant le nouveau nom aux anciennes ça devrait fonctionner, avec juste la perte des des nouvelles données avant l'opération, mais si c'est fait assez rapidement ça ne pose pas vraiment de problème

@hekmon
Copy link
Owner

hekmon commented Nov 3, 2023

Les entités changent de nom, les anciennes données ne sont plus liées.

Ca avait effectivement été un sujet lors du passage de la v1 (yaml config) à la v2 (config flow) : j'avais mis dans le readme de l'époque une petite procédure pour ceux qui voulaient garder les mêmes.

Pour info je viens de me rendre compte que le fork n'était plus fonctionnel depuis la dernière MAJ de HA (j'avais ajouté certains sensors en CONFIG).
Je les ai passés en DIAGNOSTIC, je vais faire le pull request

Oui j'ai eu le même problème (d'où la sortie de la v2.0.7). J'aurais pu le fix moi même mais merci !

Préviens nous quand la v3 beta est disponible au test @hekmon🙂

J'ai repéré 2 ou 3 petites choses que je souhaiterai corriger avant (2 sondes orphelines créées sur la pile et non ajoutées dans l'array des sondes), un peu de linting par ci par là et des classes héritées que réimplémente le constructeur du parent plutôt que de l'appeler directement (repéré mais pas encore corrigé). J'ai déjà commencé, ca devrait pas trop tarder :)

@hekmon
Copy link
Owner

hekmon commented Nov 15, 2023

Désolé pour le temps d'attente mais la relecture réintégration a fait du bien car elle m'a permis de trouver une regression pour le mode historique. Désormais corrigée :)

@gduteil au final il y aura eu quelques de commits d'integration à la code base, pouvez-vous relire la version finale pour m'assurer que je n'ai pas enlever quelque chose de vital pour le mode standard et la tester chez vous ?

La première beta de la version 3 est par ici 🎉

@theblackhole
Copy link

La première beta de la version 3 est par ici 🎉

Top ! Je viens d'envoyer la demande à mon fournisseur pour passer au mode standard, il n'y a plus qu'à attendre... :)

En attendant j'imagine que la beta est sensée gérer à la fois le mode historique et standard ? (que je sache s'il faut que j'attende le mode standard pour l'installer)

@gduteil
Copy link
Author

gduteil commented Nov 16, 2023

Désolé pour le temps d'attente mais j'ai la relecture réintégration a fait du bien car elle m'a permis de trouver une regression pour le mode historique. Désormais corrigée :)

@gduteil au final il y aura eu quelques de commits d'integration à la code base, pouvez-vous relire la version finale pour m'assurer que je m'ai pas enlever quelque chose de vital pour le mode standard et la tester chez vous ?

La première beta de la version 3 est par ici 🎉

Merci pour la relecture et les corrections, les relectures sont toujours utiles d'autant plus que je ne suis pas très à l'aise avec Python et encore moins avec l'API de Home Assistant.

J'ai installé la bêta, ça a l'air fonctionnel chez moi, au moins en standard, monophasé et sans reinjection.

@gduteil
Copy link
Author

gduteil commented Nov 16, 2023

La première beta de la version 3 est par ici 🎉

Top ! Je viens d'envoyer la demande à mon fournisseur pour passer au mode standard, il n'y a plus qu'à attendre... :)

En attendant j'imagine que la beta est sensée gérer à la fois le mode historique et standard ? (que je sache s'il faut que j'attende le mode standard pour l'installer)

Oui la bêta gère les 2 modes, néanmoins lors du passage en mode standard il faudra supprimer l'ancien compteur et le réinstaller en cochant le mode standard, et faire une opération pour rattacher les anciennes entités sur les nouvelles (voir les posts ci-dessus)

@theblackhole
Copy link

Voici mon retour d'expérience de la beta avec le mode standard :

Linky : Sagem G1 monophasé
Abonnement : EDF Base (et pas de production)
Module : Linxee TIC-DIN
Mode : Standard avant la mise à jour vers la beta (ils ont été plus rapide que moi EDF/ENEDIS 😁)

Je confirme que le baudrate 9600 pour le mode Standard est correct, comme indiqué dans le readme :

linkytic/README.md

Lines 123 to 126 in 0f81acc

* Mode standard (à vérifier)
```bash
stty -F /dev/ttyUSB0 9600 sane evenp parenb cs7 -crtscts
```

A voir dans le temps mais tout semble fonctionner : les statistiques semblent correctement récupérées, beau travail ! 🙂

J'ai reproduit (et retranscrit) la méthode que j'ai utilisé pour fusionner les anciennes statistiques du tableau énergie avec les nouvelles et ainsi ne pas perdre l'historique.

Note: j'ai tendance à laisser un peu de temps entre chaque action, surtout les action de renommage d'entité et celles de suppression pour laisser le temps à home assistant de faire un éventuel travail de fond. C'est probablement pas nécessaire mais comme il n'y a aucun retour visuel sur le processus de migration/fusion de données, impossible de savoir si on peut enchaîner les actions ou s'il faut le laisser travailler en arrière plan pour éviter des problèmes

  1. Nettoyage et mapping
  • Supprimer l'ancien appareil et ajouter le nouveau en mode standard
  • Supprimer votre source de consommation réseau dans le tableau énergie
  • Il y a 3 statistiques qui sont maintenant orphelines (vérifiable dans outils de développement > statistiques) :
    • sensor.linky_index_option_base
    • sensor.linky_puissance_apparente
    • sensor.linky_intensite_instantanee
  • Il faut maintenant trouver quelles sont les nouvelles entitées qui pourraient correspondre aux anciennes.
    • Dans mon cas, les entités sensor.linky_libelle_tarif_fournisseur_en_cours (BASE) et sensor.linky_numero_de_lindex_tarifaire_en_cours (01) m'indiquent que la sonde qui s'appelait sensor.linky_index_option_base correspond maintenant à sensor.linky_energie_active_soutiree_fournisseur_index_01 et le dernier index relevé est cohérent.
    • sensor.linky_puissance_apparente devient sensor.linky_puissance_app_de_reference (vous confirmez ?)
    • sensor.linky_intensite_instantanee devient sensor.linky_courant_efficace_phase_1 (vous confirmez ?)
  • Profitez en pour faire une capture d'écran de la liste complète des nouvelles entités, ça servira plus tard
  1. Renommage des anciennes entités / fusion des données :
    Avec ces infos, il faut maintenant :
  • Supprimer le nouveau compteur nouvellement ajouté
  • L'ajouter à nouveau en mode Historique (même s'il est passé en mode Standard, ce sont les anciennes entités qui nous intéressent)
  • Dans outils de développement > statistiques , supprimer (avec le bouton Corriger) toutes les statistiques correspondant aux nouvelles entités qui sont maintenant orphelines (car on l'a ajouté en mode historique), s'aider de la capture d'écran précédente de la liste d'entités si besoin
  • Renommer les entités (j'ai renommé l'id et le nom dans le doute mais probablement que l'id doit suffire) :
    • sensor.linky_index_option_base dans mon cas devient sensor.linky_energie_active_soutiree_fournisseur_index_01 (et le nom devient Energie active soutirée fournisseur, index 01)
    • sensor.linky_puissance_apparente devient sensor.linky_puissance_app_de_reference (nom Puissance app. de référence) (vous confirmez ?)
    • sensor.linky_intensite_instantanee devient sensor.linky_courant_efficace_phase_1 (nom Courant efficace, phase 1) (vous confirmez ?)
  1. Dernière suppression et dernier ajout :
  • Supprimer une nouvelle fois l'Appareil linky et vérifiez que dans "outils de développement > statistiques" les 3 statistiques renommées sont bien présentes (fournisseur index 01, puissance app de référence etc...)
  • Ajouter une dernière fois l'Appareil en mode Standard
  • Ajouter la nouvelle source de consommation (ex Energie active soutirée fournisseur, index 01) dans le tableau énergie
  • Voilà ! Si tout s'est bien déroulé, dans le tableau de bord énergie, l'historique de consommation précédent est consultable et les nouvelles données s'ajouteront à la suite. Au passage c'est normal que l'historique des entités ne soit pas fusionné et que seules les nouvelles données soient visibles, cette méthode ne fusionne que les données statistiques (exploitées dans le tableau de bord énergie par exemple)

Vous voulez que je fasse une PR sur le README pour l'intégrer (avec des images et des choses à retravailler j'imagine ?) ? Ou un autre MD/Wiki séparé ?

@gduteil
Copy link
Author

gduteil commented Nov 19, 2023

Les correspondances des entités ont l'air correctes, pour l'énergie soutirée j'ai un doute, je pense que sans contrat heures creuses l'index 01 est le même relevé que le total (ce qui est mon cas) mais qu'avec un contrat heures creuses les relevés seront ventilés entre l'index 01 et 02.

Le mieux est effectivement de prendre une capture des valeurs avant de supprimer le compteur, identifier les entités qu'on souhaite migrer et comparer avec les entités du mode standard en se basant sur les valeurs remontées pour trouver la correspondance.

@hekmon
Copy link
Owner

hekmon commented Nov 20, 2023

Bonnes nouvelles ! Merci pour vos retours 🙏

@theblackhole je mettrai à jour le readme lors du passage à la v3.0.0 stable et à ce moment là je mettrais directement un lien vers votre post pour votre (très complet !) walkthrough.

Tant qu'on est en beta, gardons les informations centralisées ici pour les aventuriers :)

@hekmon
Copy link
Owner

hekmon commented Nov 20, 2023

Tant que j'y suis, l'un de vous serait-il prêt à faire un screenshot de l'appareil et de toutes ses sondes ? Je suis curieux :D

(pensez à caviarder le numéro de série de la sonde "adresse du compteur")

@gduteil
Copy link
Author

gduteil commented Nov 20, 2023

Tant que j'y suis, l'un de vous serait-il prêt à faire un screenshot de l'appareil et de toutes ses sondes ? Je suis curieux :D

(pensez à caviarder le numéro de série de la sonde "adresse du compteur")

Voici :

Capture d’écran du 2023-11-20 09-27-12

Capture d’écran du 2023-11-20 09-28-35

@hekmon
Copy link
Owner

hekmon commented Nov 20, 2023

Fiou ca en fait un petit paquet par rapport au mode historique, merci !

@gduteil
Copy link
Author

gduteil commented Nov 20, 2023

Fiou ca en fait un petit paquet par rapport au mode historique, merci !

Oui, et encore il n'y a pas ceux pour le triphasé ni l'injection

@theblackhole
Copy link

@gduteil

Les correspondances des entités ont l'air correctes, pour l'énergie soutirée j'ai un doute, je pense que sans contrat heures creuses l'index 01 est le même relevé que le total (ce qui est mon cas) mais qu'avec un contrat heures creuses les relevés seront ventilés entre l'index 01 et 02.

Oui c'est ce que je pense aussi d'où les sondes sensor.linky_numero_de_lindex_tarifaire_en_cours qui indique quel index est utilisé actuellement et sensor.linky_libelle_tarif_fournisseur_en_cours à quoi il correspond (dans notre cas comme on n'a pas de HP/HC, ça sera toujours le 01)

J'ai également remarqué la présence des sondes distributeur qui donnent d'autres index. Elles n'ont pas de libellé dans HA mais on peut voir à quoi cela correspond sur l'affichage du compteur et quel index est en cours :

image

Je me demande si c'est une info transmise par le TIC que l'on pourrait récupérer. Car, perso, même si ça n'influe pas sur mon tarif, je trouve que c'est une donnée intéressante 🙂

@hekmon

Bonnes nouvelles ! Merci pour vos retours 🙏

Avec plaisir ! 😃

@theblackhole je mettrai à jour le readme lors du passage à la v3.0.0 stable et à ce moment là je mettrais directement un lien vers votre post pour votre (très complet !) walkthrough.

Tant qu'on est en beta, gardons les informations centralisées ici pour les aventuriers :)

Bonne idée ! ça permettra à d'autres testeurs de vérifier si la méthode est bonne pour tous avant de publier. Par contre pour en faciliter l'édition, je pense qu'il faudra que ça soit dans un nouveau Wiki Github, soit dans un nouveau fichier Markdown sur lequel tu pourras pointer le lien.

Tant que j'y suis, l'un de vous serait-il prêt à faire un screenshot de l'appareil et de toutes ses sondes ? Je suis curieux :D

Au passage je confirme que de mon côté, avec mon compteur G1, il n'y a pas de différence avec les captures de @gduteil 😉

Aussi je viens d'avoir une idée : est-ce que ce ne serait pas intéressant d'informer les utilisateurs actuels de la stable qu'une beta est disponible et que des testeurs ayant une situation différente de nous 2 sont les bienvenus (ex: HP/HC, Tempo, abonnement professionnel avec tarifs en fonction de l'heure/la saison, Triphasé, Producteur, autre marque de compteur...) ? Je ne sais pas si HACS propose un système de notification ou si ça passerait par une montée de version avec un rajout dans le readme et/ou détail dans la release peut-être ?

@hekmon
Copy link
Owner

hekmon commented Nov 20, 2023

J'ai également remarqué la présence des sondes distributeur qui donnent d'autres index. Elles n'ont pas de libellé dans HA mais on peut voir à quoi cela correspond sur l'affichage du compteur et quel index est en cours :
Je me demande si c'est une info transmise par le TIC que l'on pourrait récupérer. Car, perso, même si ça n'influe pas sur mon tarif, je trouve que c'est une donnée intéressante 🙂

Malheureusement je ne pense pas que ce soit possible, vu qu'elle ne sont pas décrites dans le standard TIC (la description du mode standard commence à la page 17).

Bonne idée ! ça permettra à d'autres testeurs de vérifier si la méthode est bonne pour tous avant de publier. Par contre pour en faciliter l'édition, je pense qu'il faudra que ça soit dans un nouveau Wiki Github, soit dans un nouveau fichier Markdown sur lequel tu pourras pointer le lien.

Je n'ai jamais utilisé le wiki intégré à github, il faut que je regarde ca avant la sortie de la v3 stable oui.

Aussi je viens d'avoir une idée : est-ce que ce ne serait pas intéressant d'informer les utilisateurs actuels de la stable qu'une beta est disponible et que des testeurs ayant une situation différente de nous 2 sont les bienvenus (ex: HP/HC, Tempo, abonnement professionnel avec tarifs en fonction de l'heure/la saison, Triphasé, Producteur, autre marque de compteur...) ? Je ne sais pas si HACS propose un système de notification ou si ça passerait par une montée de version avec un rajout dans le readme et/ou détail dans la release peut-être ?

Tout à fait. Pour HACS, c'est déjà disponible vu que je publie des releases "beta" dans github avec les bon tags (l'utilisateur doit néanmoins cocher "voir les préversions" ou quelque chose du genre). Pour ceux qui le font en manuel, je viens de mettre à jour le readme afin de renvoyer par ici :)

@theblackhole theblackhole mentioned this pull request Nov 20, 2023
@gduteil
Copy link
Author

gduteil commented Nov 20, 2023

@theblackhole j'ai personnellement opté pour l'utilisation du "linky_energie_active_soutiree_totale" qui a la même valeur que le 01 sans abonnement HC, mais ça me paraissait plus logique.

Bien vu pour la correspondance des index, je m'étais posé la question à quoi ça correspondait mais il n'y avait rien dans la doc, j'avais pas pensé à comparer avec les valeurs affichées directement sur le compteur. À voir s'il vaut mieux laisser les les entités avec ces noms là et mettre les correspondance dans le readme/wiki, quitte à ce que les utilisateurs les renomment s'ils le souhaitent ou s'il faut les renommer par défaut.

@theblackhole
Copy link

@hekmon

Malheureusement je ne pense pas que ce soit possible, vu qu'elle ne sont pas décrites dans le standard TIC (la description du mode standard commence à la page 17).

Ah dommage, en effet ça ne semble pas possible.
Par contre en lisant la doc, ça me fait penser la migration de sensor.linky_puissance_apparente vers sensor.linky_puissance_app_de_coupure serait peut-être plus adaptée que vers la sonde sensor.linky_puissance_app_de_reference que j'ai indiqué car maintenant la distinction est faite entre la puissance apparente souscrite et celle utilisée pour couper le compteur (ex: reduction en cas d'impayé j'imagine ?).
Qu'en pensez-vous ?

image

@gduteil

@theblackhole j'ai personnellement opté pour l'utilisation du "linky_energie_active_soutiree_totale" qui a la même valeur que le 01 sans abonnement HC, mais ça me paraissait plus logique.

Haaaaa mais je l'ai totalement manqué celui-là. En effet c'est beaucoup plus simple 😁
Par contre pas forcément adapté pour ceux qui voudraient suivre séparément les HC et HP mais je pense qu'ils auront d'autres index à mapper à ce moment là

À voir s'il vaut mieux laisser les les entités avec ces noms là et mettre les correspondance dans le readme/wiki, quitte à ce que les utilisateurs les renomment s'ils le souhaitent ou s'il faut les renommer par défaut.

Pour un renommage c'est une bonne idée mais il faudrait que ce soit fait en récupérant l'info dynamiquement et seulement au niveau du nom, pas de l'id.

Car la présence de ce fameux pointeur d'index avec libellé me laisse penser que ça peut être différent en fonction du fournisseur et des options choisis. (Par exemple: peut-être que pour EDF HP est en index 01 et HC en index 02 mais que pour Engie avec un contrat similaire ce serait un total en index 01, HC en 02 et HP en 03).

Ou alors l'intégration pourrait se référer à un tableau de correspondance adapté en fonction de chaque fournisseur et ses options (que l'utilisateur devrait renseigner dans les options de l'intégration). C'est plus embêtant à maintenir mais ça permettrait d'éviter de devoir attendre un cycle complet HP/HC par exemple pour avoir toutes les entités renommées.

@theblackhole
Copy link

@hekmon

Tout à fait. Pour HACS, c'est déjà disponible vu que je publie des releases "beta" dans github avec les bon tags (l'utilisateur doit néanmoins cocher "voir les préversions" ou quelque chose du genre). Pour ceux qui le font en manuel, je viens de mettre à jour le readme afin de renvoyer par ici :)

C'est bien ça avec la bêta à cocher pour avoir la maj.
Mais quand on est dans le canal stable et qu'une beta est publiée, HACS ne n'indique pas qu'une nouvelle version est disponible. D'où la notion de notification, quitte à passer par une nouvelle release stable (même s'il n'y a rien de nouveau) pour en informer les utilisateurs s'il n'y a pas d'autres moyens de notifier les utilisateurs actuels.

@surface38
Copy link

Merci pour votre retour. Je viens de passer en V3, et j'ai fait la demande pour le mode standard, je regarde demain et je vous tiens au courant.

@surface38
Copy link

Tout marche niquel, mille mercis ! et un grand bravo pour le boulot , et merci de le partager

@gduteil
Copy link
Author

gduteil commented Jan 28, 2024

Tout marche niquel, mille mercis ! et un grand bravo pour le boulot , et merci de le partager

Merci pour le retour, le triphasé en mode standard n'avait pas encore été testé

@hekmon hekmon mentioned this pull request Feb 2, 2024
@aladin2000
Copy link

aladin2000 commented Feb 12, 2024

Bonjour Mon contrat est TriPhase et je prevois de réaliser/acquérir un module TIC linky Teleinfo parmi les différents modèle

je voulais avoir accès à la Beta pour pouvoir vous faire des retours ....

Avant de voir si je commande un modele tout fait ou realisé par moi meme j'aurais bien voulu un retour sur un bon conseil pour faire la bonne acquisition dès le début.
je desirerais avoir un conseil pour le choix du bon module TICtelefinfo en prototype (quel module le plus adapté pour commencer avec un pi A ou B puis pour le faire évoluer vers le ESP32 Mini C3 (ou mini S2).
Exemple : ce lien pour debuter mon prototype ?
https://www.magdiblog.fr/gpio/teleinfo-edf-suivi-conso-de-votre-compteur-electrique/
je pense utiliser un pi en mode déport sur réseau pour l'intégrer de manière transitoire sur mon HA.

est ce une possibilité de départ pour ensuite recupérer le module et remplacer le pi par le wemos C3

@aladin2000
Copy link

Bonjour, ces infos devraient être remontées si le mode triphasé a été selectionné, ce n'est pas le cas ?
passer en mode standard ... Est ce que ceci efface l'historique des consommations passées ?

@aladin2000
Copy link

Tout marche niquel, mille mercis ! et un grand bravo pour le boulot , et merci de le partager

est ce que tu as conservé ton historique de consommation chez Enedis en passant de historique à standard

@surface38
Copy link

Tout marche niquel, mille mercis ! et un grand bravo pour le boulot , et merci de le partager

est ce que tu as conservé ton historique de consommation chez Enedis en passant de historique à standard

Bonjour, Oui j ai tout conservé

@gduteil
Copy link
Author

gduteil commented Feb 12, 2024

Bonjour Mon contrat est TriPhase et je prevoie de réaliser/acquérir un module TIC linky Teleinfo parmi les différents modèle

je voulais avoir accès à la Beta pour pouvoir vous faire des retours ....

Avant de voir si je commande un modele tout fait ou realisé par moi meme j'aurais bien voulu un retour sur un bon conseil pour faire la bonne acquisition dès le début. je desirerais avoir un conseil pour le choix du bon module TICtelefinfo en prototype (quel module le plus adapté pour commencer avec un pi A ou B puis pour le faire évoluer vers le ESP32 Mini C3 (ou mini S2). Exemple : ce lien pour debuter mon prototype ? https://www.magdiblog.fr/gpio/teleinfo-edf-suivi-conso-de-votre-compteur-electrique/ je pense utiliser un pi en mode déport sur réseau pour l'intégrer de manière transitoire sur mon HA.

est ce une possibilité de départ pour ensuite recupérer le module et remplacer le pi par le wemos C3

Personnellement je suis sur un module maison avec un optocoupleur et 2 résistances (similaire à ton lien) branché directement sur l'UART du RPI4 qui fait tourner HA.
Cette intégration nécessite une connexion série soit en direct soit en USB (pas forcément connecté sur la machine où tourne HA), elle ne fonctionnera pas si tu veux passer par de l'ESP ou des modules Zigbee, il faudra utiliser le ESPHome ou Zlinky (je ne les ai jamais testés).

@gduteil
Copy link
Author

gduteil commented Feb 12, 2024

Tout marche niquel, mille mercis ! et un grand bravo pour le boulot , et merci de le partager

est ce que tu as conservé ton historique de consommation chez Enedis en passant de historique à standard

Lors du changement en standard, il faut rattacher les anciennes entités aux nouvelles.
Ca peut être fait en renommant les entités du mode historique par leur nom en standard (j'ai commencé un tableau de correspondance dans un lien au dessus), ou en tapant directement dans la base (https://github.com/gduteil/linkytic/wiki/Passage-du-mode-Historique-au-mode-Standard)

@aladin2000
Copy link

aladin2000 commented Feb 12, 2024 via email

@aladin2000
Copy link

aladin2000 commented Mar 1, 2024

Bonjour Mon contrat est TriPhase et je prevois de réaliser/acquérir un module TIC linky Teleinfo parmi les différents modèle

je voulais avoir accès à la Beta pour pouvoir vous faire des retours ....

Avant de voir si je commande un modele tout fait ou realisé par moi meme j'aurais bien voulu un retour sur un bon conseil pour faire la bonne acquisition dès le début. je desirerais avoir un conseil pour le choix du bon module TICtelefinfo en prototype (quel module le plus adapté pour commencer avec un pi A ou B puis pour le faire évoluer vers le ESP32 Mini C3 (ou mini S2). Exemple : ce lien pour debuter mon prototype ? https://www.magdiblog.fr/gpio/teleinfo-edf-suivi-conso-de-votre-compteur-electrique/ je pense utiliser un pi en mode déport sur réseau pour l'intégrer de manière transitoire sur mon HA.

est ce une possibilité de départ pour ensuite recupérer le module et remplacer le pi par le wemos C3

Je réponds à moi même...
Des news sur l'installation TriPhasé HC/HP tout est OK ce matin d'un point de vue software... merci encore...

Par contre côté Hardware sur la RASPI B , j'y suis parvenu uniquement en utilisant un adaptateur FTDI car je n'ai pas résussi en mode UART, problème dans mon montage probablement .... Je vai essayer de mettre un ESP01 que j'ai en sock pour valider mon montage. à moins que qqun aie une autre ideé ?
Est ce que qqun aurait un retour d'expérience notamment sur la valeur de R1 car j'ai dû la court-circuiter dans mon montage FTDI. Probabalement une conséquence sur mon montage UART...

@Iz-No-Good
Copy link

Hello,

Comme je viens de passer en mode standard, j'en profite pour me rajouter à la liste des testeurs :)
Pour le moment, j'ai mappé les index comme suit:

HC Bleu: sensor.linky_energie_active_soutiree_fournisseur_index_01
HP Bleu: sensor.linky_energie_active_soutiree_fournisseur_index_02
HC Blanc: sensor.linky_energie_active_soutiree_fournisseur_index_03
HP Blanc: sensor.linky_energie_active_soutiree_fournisseur_index_04
HC Rouge: sensor.linky_energie_active_soutiree_fournisseur_index_05
HP Rouge: sensor.linky_energie_active_soutiree_fournisseur_index_06

HC Saison Basse : sensor.linky_energie_active_soutiree_distributeur_index_01
HP Saison Basse : sensor.linky_energie_active_soutiree_distributeur_index_02
HC Saison Haute : sensor.linky_energie_active_soutiree_distributeur_index_03
HP Saison Haute : sensor.linky_energie_active_soutiree_distributeur_index_04

En regardant le linky, j'imagine que plus tard il y aura:

Index MID : sensor.linky_energie_active_soutiree_distributeur_index_05
Index INJECTION sensor.linky_energie_active_soutiree_distributeur_index_06

Si je peux tester qqchse de particulier, ou fournir des screenshot, demandé ;)

@yves67
Copy link

yves67 commented Apr 4, 2024

bonjour
j'ai un compteur linky triphasé installé, et j'ai fait changer le tic en mode standard
j'ai acheté un usbtic lixee, et en le connectant sur un windows, je vois bien les trames en 9600, 7bits, parité pair
mon HA est sous promox, j'ai bien ajouté l'USB à ma VM HA
depuis le terminal dans HA j'ai fait une commande stty -F /dev/ttyUSB2 9600 sane evenp parenb cs7 -crtscts
mais la commande cat /dev/ttyUSB2 ne donne rien ??
et après installation de la beta 3 et paramétrage avec ttyUSB2 je n'obtiens rien
comme si rien ne sortait du ttyUSB2 ?
home-assistant_linkytic_2024-04-04T15-05-27.568Z.log
je ne sais plus quoi faire ?
je suis sûr que le usbtic est bien sur le ttyUSB2
merci si vous pouvez m'aider

@yves67
Copy link

yves67 commented Apr 4, 2024

j'ai aussi un USB casa zigbee , qui a le même ID 10c4:ea60 que l' USBTIC de silicone labs LIXEE
j'ai enlevé l' USB casa Zigbee et la liaison tic fonctionne
il se mélange les crayons entre ces 2 USB qui ont le même ID
pour l'instant je ne me sers pas du zigbee
mais coment faire pour faire cohabiter les deux ??

@yves67
Copy link

yves67 commented Apr 4, 2024

mais dans le terminal de HA la commande cat /dev/ttyUSB2 ne donne rien, alors que cela fonctionne ??

@theblackhole
Copy link

theblackhole commented Apr 4, 2024

Bonjour @yves67.

Normalement l'id identique n'est pas sensé poser problème (en tout cas c'est mon cas avec mon skyconnect + lixee qui cohabitent, tous 2 avec l'id 10c4:ea60 de Silicon Labs) mais vu que t'es sous Proxmox, il y a peut-être une piste : est-ce que tu fais un passtrough de tes appareils USB un par un vers ta VM ou est-ce que tu as branché un hub USB et c'est celui-ci qui est branché sur ta VM ?
Si ce n'est pas le cas, je t'invite a brancher un hub USB et faire le passtrough de celui-ci (ou le faire sur un hub interne si ton serveur en a plusieurs) plutôt que chaque appareil usb un par un.
ça règle beaucoup de problèmes comme le support des branchements à chaud et pourrait potentiellement régler le tien.

Aussi je t'invite à utiliser les alias qui se situent dans /dev/serial/by-id/ pour référencer tes périphériques série (ex /dev/serial/by-id/usb-Silicon_Labs_CP2102_USB_to_UART_Bridge_Controller_0001-if00-port0 qui pointe vers ttyUSB1 dans mon cas pour le Linxee), ça permet de s'assurer de choisir le bon appareil et est plus résilient en cas éventuel de changement d'ordre des périphériques série (par ex, passage de mon Linxee à ttyUSB0 suite à une maj, changement de hub ou je ne sais quoi)

mais dans le terminal de HA la commande cat /dev/ttyUSB2 ne donne rien, alors que cela fonctionne ??

Si "ne donne rien" veut dire que ça a terminé l'execution du cat et que tu peux taper une nouvelle commande, alors c'est peut-être qu'il faut refaire la commande stty -F /dev/serial/by-id/_<ton-usbtic>_ 9600 sane evenp parenb cs7 -crtscts avant de l'interroger à nouveau

@yves67
Copy link

yves67 commented Apr 4, 2024

merci de votre réponse
je n'ai pas de hub, mes USB sont branchés sur le NUC et sous promox je les add dans la VM de HA
je vais regarder mais je crois que j'ai un hub usb quelque part ??

pour le cat, c'est ok, j'ai fait un stty avant et ça marche merci

quand tu dis utiliser les alias, j'ai regardé dans le répertoire /dev/serial/by-id/ j'ai trois répertoires

image

comment utiliser ces alias ? à la place de ttyUSB2 dans le paramétrage ?

@yves67
Copy link

yves67 commented Apr 4, 2024

dans le repértoire by-id ce sont aussi des répertoires ??

@yves67
Copy link

yves67 commented Apr 4, 2024

non, ce sont des links...
j'ai fait un ls -l

image

@yves67
Copy link

yves67 commented Apr 4, 2024

il faut taper usb-Silicon_Labs.... à la place de ttyUSB2 ??

@theblackhole
Copy link

@yves67 oui ce sont des liens symboliques et c'est tout l'avantage du truc, ces liens ne bougeront pas contrairement aux appareils sur lequels ils pointent :)
et oui c'est bien ça qu'il faudrait mettre à l'ajout de ton compteur à la place de /dev/ttyUSB2, ça suivra automatiquement le lien symbolique pour communiquer avec le bon appareil
image

(Au passage, il est préférable d'éditer ton message plutôt que d'en ajouter de nouveaux afin d'éviter de spammer la boite mail de tous ceux qui suivent cette Pull Request 😁)

@yves67
Copy link

yves67 commented Apr 4, 2024

ok, désolé pour les messages, je ferai des éditions...
actuellement j'ai rebranché les zigbee et tout fonctionne mais ça doit être un coup de chance , je vais mettre les liens dans la définition du package linky et dans le zigbee
pas besoin du hub ??
merci de ton aide

@theblackhole
Copy link

theblackhole commented Apr 4, 2024

Top si ça fonctionne ! Ravi d'avoir pu aider :)
A voir avec le temps et les futurs redémarrages mais oui tu verras que c'est plus facile et stable de lier un hub à ta VM. Comme ça tous les périphériques branchés à ton hub seront automatiquement reconnus par ta VM sans changer de configuration dans proxmox.

Et si, au lieu d'un hub externe que tu branches, tu veux dédier un hub interne à ta VM tu peux les identifier en faisant lsusb (lsusb -t pour voir l'arborescence). Ils sont généralement appelés "Linux Foundation 2.0/3.0 root hub"

Exemple (cliquer pour dévoiler)
 ~  lsusb
Bus 006 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 005 Device 003: ID 1038:1208 SteelSeries ApS SteelSeries Apex 300 Gaming Keyboard
Bus 005 Device 002: ID 046d:c332 Logitech, Inc. G502 Proteus Spectrum Optical Mouse
Bus 005 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 002: ID 0b05:189d ASUSTek Computer, Inc. Xonar SoundCard
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 003: ID 051d:0002 American Power Conversion Uninterruptible Power Supply
Bus 001 Device 005: ID 0b0e:245d GN Netcom Jabra Link 370
Bus 001 Device 004: ID 05e3:0610 Genesys Logic, Inc. Hub
Bus 001 Device 002: ID 05e3:0608 Genesys Logic, Inc. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
 ~  lsusb -t
/:  Bus 06.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M
/:  Bus 05.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 480M
    |__ Port 1: Dev 2, If 0, Class=Human Interface Device, Driver=usbhid, 12M
    |__ Port 1: Dev 2, If 1, Class=Human Interface Device, Driver=usbhid, 12M
    |__ Port 2: Dev 3, If 0, Class=Human Interface Device, Driver=usbhid, 12M
    |__ Port 2: Dev 3, If 1, Class=Human Interface Device, Driver=usbhid, 12M
    |__ Port 2: Dev 3, If 2, Class=Human Interface Device, Driver=usbhid, 12M
/:  Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 10000M
/:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 480M
    |__ Port 1: Dev 2, If 0, Class=Audio, Driver=snd-usb-audio, 480M
    |__ Port 1: Dev 2, If 1, Class=Audio, Driver=snd-usb-audio, 480M
    |__ Port 1: Dev 2, If 2, Class=Audio, Driver=snd-usb-audio, 480M
    |__ Port 1: Dev 2, If 3, Class=Audio, Driver=snd-usb-audio, 480M
    |__ Port 1: Dev 2, If 4, Class=Audio, Driver=snd-usb-audio, 480M
    |__ Port 1: Dev 2, If 5, Class=Audio, Driver=snd-usb-audio, 480M
    |__ Port 1: Dev 2, If 6, Class=Human Interface Device, Driver=usbhid, 480M
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 10000M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/10p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M
        |__ Port 2: Dev 4, If 0, Class=Hub, Driver=hub/4p, 480M
            |__ Port 2: Dev 5, If 0, Class=Audio, Driver=snd-usb-audio, 12M
            |__ Port 2: Dev 5, If 1, Class=Audio, Driver=snd-usb-audio, 12M
            |__ Port 2: Dev 5, If 2, Class=Audio, Driver=snd-usb-audio, 12M
            |__ Port 2: Dev 5, If 3, Class=Human Interface Device, Driver=usbhid, 12M
    |__ Port 2: Dev 3, If 0, Class=Human Interface Device, Driver=usbhid, 12M

Expérimente en déplaçant un appareil de port usb en port usb pour savoir quels ports usb correspondent à quel hub interne.
C'est ce (ou ces) hub(s) interne(s) choisi(s) que tu lieras à ta VM au lieu de chaque appareil.
Attention si tu n'en a qu'un hub (ou pas assez pour avoir des ports usb libres pour brancher une clé usb en cas de problème), alors il faudra utiliser un hub usb externe.
L'idée est d'éviter de se retrouver avec un proxmox que tu ne peux pas réparer/contrôler à cause de tous les appareils USB qui sont envoyés sur ta VM 😁

@yves67
Copy link

yves67 commented Apr 4, 2024

ok, merci
je viens de recréer le linky en mettant le lien symbolique et ça marche
je vais faire le zigbee
ok pour le HUB, je vais étudier cela demain
encore merci

@yves67
Copy link

yves67 commented Apr 4, 2024

depuis la machine promox voilà ce que je vois :
image
la VM 100 est le HA
mais je ne comprends pas comment ça marche
quand vous aurez un peu de temps merci de m'exliquer
MERCI

@theblackhole
Copy link

Salut @yves67 , désolé je t'avais oublié ^^
J'ai annoté ta capture pour que tu comprennes plus facilement ce qui est affiché
image
T'as 3 root_hub USB, chacun identifié par un numéro de Bus :

  • un avec 4 appareils USB actuellement branchés dessus (Bus 1, cadre vert)
  • un avec un appareil branché (Bus 2, cadre rouge)
  • un libre (Bus 3, cadre jaune). En débranchant un appareil (ex: ton dongle bluetooth) et en relançant la commande, tu peux voir quelles prises usb correspondent à tel ou tel hub. Parfois un hub n'a pas de prise USB visible car il s'agit d'un hub interne
  • une fois que t'as identifié le root_hub que tu veux dédier à ta VM (imaginons ici ton hub avec les 4 appareils, soit Bus 1 Dev 1, ID 1d6b:0002), c'est lui que tu lieras à ta VM à la place de chaque appareil USB que tu as lié un par un (Dev 5, 7, 12, 10). Ainsi, l'ensemble de ce que tu branches dessus sera disponible dans la VM.

Si t'as des questions, on peut poursuivre la discussion via MP Twitter ou mail, liens sur mon profil, car cette PR n'est pas l'endroit adapté pour ça. ;)

@romP44
Copy link

romP44 commented Jun 11, 2024

Bonjour,
Pouvez-vous m'expliquer comment installer la V3 sur Home Assistant pour avoir le mode standard ?
Je suis actuellement en version 2.0.7.

Edit : j'ai trouvé : https://hacs.xyz/docs/faq/beta

@jipem01
Copy link
Contributor

jipem01 commented Oct 27, 2024

Testé ce jour sur mon installation, Linky en mode standard :

  • ADS n°67 non reconnu, me génère donc des erreurs dans les logs.
  • Mon linky ne génère pas SINSTS, qui est indisponnible du coup. Par contre j'ai SINST1 à la place. Et non il ne s'agit pas de SINTS1 (liée au triphasé)
  • Pareil dans les logs je vois SMAXN et SMAXN-1 au lieu de SMAXSN
    Quelques autres entitées sont indisponibles, il faut que je regarde si c'est normal.
    J'ai l'impression que sur mon ADS n°67 il y a quelques modifications des trames... Je vais fureté le net si je trouve de la documentation.

@bdecl
Copy link

bdecl commented Oct 29, 2024

J'ai testé la 3.0.0-beta3 (fresh install) sur ma config Linky triphasé (Sagem) - Standard - Producteur - Tempo - temps réel (on et off) - HA Green - Module Micro Téléinfo V3.0 et quasi tout fonctionne.

Ce qui ne donne pas de information mais certainement normal pour ma configuration:

  • les 7 sensors en rapport les pointes mobiles
  • sensor.linky_profil_du_prochain_jour_calendrier_fournisseur

Je reconfirme le mappage des index tempo (bleu, blanc, rouge) comme déjà mentionné plus haut:
HC Bleu: sensor.linky_energie_active_soutiree_fournisseur_index_01
HP Bleu: sensor.linky_energie_active_soutiree_fournisseur_index_02
HC Blanc: sensor.linky_energie_active_soutiree_fournisseur_index_03
HP Blanc: sensor.linky_energie_active_soutiree_fournisseur_index_04
HC Rouge: sensor.linky_energie_active_soutiree_fournisseur_index_05
HP Rouge: sensor.linky_energie_active_soutiree_fournisseur_index_06

HC Saison Basse : sensor.linky_energie_active_soutiree_distributeur_index_01
HP Saison Basse : sensor.linky_energie_active_soutiree_distributeur_index_02
HC Saison Haute : sensor.linky_energie_active_soutiree_distributeur_index_03
HP Saison Haute : sensor.linky_energie_active_soutiree_distributeur_index_04

Si je peux aider avec d'autres info, suffit de demander. Merci merci

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

10 participants