Note de ce sujet :
  • Moyenne : 5 (4 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
Plus d'accès aux données de la passerelle Enphase Envoy
Bonjour.
Même si je ne comprends rien à vos modifications de code, je tiens à remercier tous les bénévoles qui travaillent à rétablir le fonctionnement de l'ESP32 et du programme. Je me doute qu'il doit y avoir aussi du plaisir à avancer et à trouver les solutions mais pour nous autres incultes en code, nous attendons patiemment mais avec soutien le résultat final qu'on espère positif (nouvelle version je pense) et j'espère pas trop difficile à installer pour des novices comme moi.
Merci à tous et bravo de vos efforts.
Répondre

(20-06-2026, 06:52 PM)michy a écrit :
(20-06-2026, 03:51 PM)rdsoft30 a écrit : Tu peux partager ton code final qui fonctionne chez toi michy ?
Il n'y a rien qui tourne chez moi, je n'ai pas de passerelle, 

je modifie le code, je l'envoi a cmichel qui fait les adaptations, compile et upload pour faire les tests,

on itère a chaque fois pour améliorer le code (que je ne partage pas complètement pour le moment tant que que ce n'est pas fonctionnel sinon a chaque fois on génère des branches de code avec des variations que je ne peux pas suivre / je reste sur ma logique [simple, efficace, robuste, économe en ressource pour l'ESP])

(20-06-2026, 06:48 PM)algorytmix a écrit :
(20-06-2026, 06:37 PM)michy a écrit :
(20-06-2026, 05:56 PM)algorytmix a écrit : Effectivement cela fonctionne mais mon firmware est corrompu toute les fonctions ne sont pas dispos

quelle version de firmware tourne sur votre passerelle ?


dans la trame que vous avez partager quelques post en arrière, je constate que ça ne commence pas par un crochet ouvrant ni ne fini par le crochet fermant ...
C'est vous qui avez supprimé ou c'est une variante en fonction du firmware ? 

pouvez vous repartager une trame complète ?
Effectivement c'est moi qui est supprimer les crochets 
Ce qui donne la trame complète du coup


Ok, ça simplifie les choses 

Donc quelle version de firmware ?

Pardon faut passerelle 8.3.5528 la fameuse 
Et pour le routeur peut importe je suis passer de v 8.00 a v17.21
Répondre

Bonsoir à tous,

Je partage le meilleur code stabilisé que j'ai pu faire sur ma passerelle.
De mon côté quelque chose d'étrange quand même qui n'est pas du au code mais au fonctionnement de ma passerelle.
La communication est rompue par la passerelle toutes les 2 minutes. Le routeur se reconnecte automatiquement, donc pour l'instant ça fait le taf pour gérer mon balon d'eau chaude.
Mais constatez vous le même soucis chez vous ?
Ma version de firmware passerelle est 8.3.5528.

Quand je passe par une page web en interrogeant l'adresse https://192.168.1.134/ipv/meters/readings je tombe sur une page web me demandant le token.
Une fois que je l'ai donné, je suis redirigé sur la page https://192.168.1.134/home sur laquelle j'ai un page graphique faite par Enphase.
Cette page aussi ne peut plus être lue après 2 minutes !!

Donc le problème est le même avec le routeur !

Je partage mon code en pièce jointe et avec le lien pour le binaire.
https://drive.google.com/drive/folders/1...sp=sharing

Si d'entre vous peuvent faire des tests pour me dire si chez eux la passerelle se déconnecte aussi après 2min ça serait cool.

Sinon pour le reste ça tourne pas trop mal.


Pièces jointes
.zip   v17.21_rdsoft30.zip (Taille : 28.5 Ko / Téléchargements : 6)
Répondre

Thumbs Up 
(20-06-2026, 07:56 PM)rdsoft30 a écrit : Bonsoir à tous,

Je partage le meilleur code stabilisé que j'ai pu faire sur ma passerelle.
De mon côté quelque chose d'étrange quand même qui n'est pas du au code mais au fonctionnement de ma passerelle.
La communication est rompue par la passerelle toutes les 2 minutes. Le routeur se reconnecte automatiquement, donc pour l'instant ça fait le taf pour gérer mon balon d'eau chaude.
Mais constatez vous le même soucis chez vous ?
Ma version de firmware passerelle est 8.3.5528.

Quand je passe par une page web en interrogeant l'adresse https://192.168.1.134/ipv/meters/readings je tombe sur une page web me demandant le token.
Une fois que je l'ai donné, je suis redirigé sur la page https://192.168.1.134/home sur laquelle j'ai un page graphique faite par Enphase.
Cette page aussi ne peut plus être lue après 2 minutes !!

Donc le problème est le même avec le routeur !

Je partage mon code en pièce jointe et avec le lien pour le binaire.
https://drive.google.com/drive/folders/1...sp=sharing

Si d'entre vous peuvent faire des tests pour me dire si chez eux la passerelle se déconnecte aussi après 2min ça serait cool.

Sinon pour le reste ça tourne pas trop mal.

je me dévoue sur la page ip/home : ça remonte toute les deux minutes sans trop de probleme depuis 10minutes
sur le routeur, ça remonte bien aussi (bon que la première phase malheureusement pour moi) mais ça tien sans problèmes depuis 10minutes aussi avec un refresh toutes les 5 secondes
Je précise passerelle enphase en rj45.


EDIT au bout de 10min je suis éjecter de la page IP/home
edit au bout de 20 min sur le routeur : 
20/06/2026 20:22:02 : JSON ERR: IncompleteInput20/06/2026 20:29:06 : JSON ERR: IncompleteInput     <= peut etre parce que je suis en tri sinon les valeurs continues de bouger 
quelle bonheur de retrouver du mouvement meme si les valeurs ne sont pas bonnes pour moi 
Répondre

(20-06-2026, 08:24 PM)algorytmix a écrit :
(20-06-2026, 07:56 PM)rdsoft30 a écrit : Bonsoir à tous,

Je partage le meilleur code stabilisé que j'ai pu faire sur ma passerelle.
De mon côté quelque chose d'étrange quand même qui n'est pas du au code mais au fonctionnement de ma passerelle.
La communication est rompue par la passerelle toutes les 2 minutes. Le routeur se reconnecte automatiquement, donc pour l'instant ça fait le taf pour gérer mon balon d'eau chaude.
Mais constatez vous le même soucis chez vous ?
Ma version de firmware passerelle est 8.3.5528.

Quand je passe par une page web en interrogeant l'adresse https://192.168.1.134/ipv/meters/readings je tombe sur une page web me demandant le token.
Une fois que je l'ai donné, je suis redirigé sur la page https://192.168.1.134/home sur laquelle j'ai un page graphique faite par Enphase.
Cette page aussi ne peut plus être lue après 2 minutes !!

Donc le problème est le même avec le routeur !

Je partage mon code en pièce jointe et avec le lien pour le binaire.
https://drive.google.com/drive/folders/1...sp=sharing

Si d'entre vous peuvent faire des tests pour me dire si chez eux la passerelle se déconnecte aussi après 2min ça serait cool.

Sinon pour le reste ça tourne pas trop mal.

je me dévoue sur la page ip/home : ça remonte toute les deux minutes sans trop de probleme depuis 10minutes
sur le routeur, ça remonte bien aussi (bon que la première phase malheureusement pour moi) mais ça tien sans problèmes depuis 10minutes aussi avec un refresh toutes les 5 secondes
Je précise passerelle enphase en rj45.


EDIT au bout de 10min je suis éjecter de la page IP/home
edit au bout de 20 min sur le routeur : 
20/06/2026 20:22:02 : JSON ERR: IncompleteInput20/06/2026 20:29:06 : JSON ERR: IncompleteInput     <= peut etre parce que je suis en tri sinon les valeurs continues de bouger 
quelle bonheur de retrouver du mouvement meme si les valeurs ne sont pas bonnes pour moi 

Bonsoir  algorytmix,

Les messages d'erreur de décodage de trames JSON je les ai aussi de temps en temps et je ne sais pas pourquoi. Je trouve la communication en Wifi avec les pages Web plus lente ou perturbées ..... de temps en temps mais sinon ça va.
Il y a globalement une demande de plus de ressource de communication sur le Wifi et ça pédale un peu de temps en temps.

Faut que je creuse cet aspect là.

Sinon ça fonctionne aussi chez moi en monophasé pour l'instant.

Question: As tu une navigation lente sur les pages Web aussi ? Sens tu un ralentissement et des fois un affichage qui ne se fait pas bien sur ton navigateur ?

A bientôt pour la version Triphasée ;-)

A+
Je vais préparer une version pour le Triphasé, que je pourrai tester aussi puisque les datas remontent mais sont à zéro ou presque ...... dommage pour le presque car sinon il aurait été possible de faire une version générique.

J'ai passé la journée à creuser et stabiliser une version pour qu'elle fonctionne chez moi, donc là il est l'heure de se poser un peu ..... LOL.
Répondre

(20-06-2026, 09:07 PM)rdsoft30 a écrit :
(20-06-2026, 08:24 PM)algorytmix a écrit :
(20-06-2026, 07:56 PM)rdsoft30 a écrit : Bonsoir à tous,

Je partage le meilleur code stabilisé que j'ai pu faire sur ma passerelle.
De mon côté quelque chose d'étrange quand même qui n'est pas du au code mais au fonctionnement de ma passerelle.
La communication est rompue par la passerelle toutes les 2 minutes. Le routeur se reconnecte automatiquement, donc pour l'instant ça fait le taf pour gérer mon balon d'eau chaude.
Mais constatez vous le même soucis chez vous ?
Ma version de firmware passerelle est 8.3.5528.

Quand je passe par une page web en interrogeant l'adresse https://192.168.1.134/ipv/meters/readings je tombe sur une page web me demandant le token.
Une fois que je l'ai donné, je suis redirigé sur la page https://192.168.1.134/home sur laquelle j'ai un page graphique faite par Enphase.
Cette page aussi ne peut plus être lue après 2 minutes !!

Donc le problème est le même avec le routeur !

Je partage mon code en pièce jointe et avec le lien pour le binaire.
https://drive.google.com/drive/folders/1...sp=sharing

Si d'entre vous peuvent faire des tests pour me dire si chez eux la passerelle se déconnecte aussi après 2min ça serait cool.

Sinon pour le reste ça tourne pas trop mal.

je me dévoue sur la page ip/home : ça remonte toute les deux minutes sans trop de probleme depuis 10minutes
sur le routeur, ça remonte bien aussi (bon que la première phase malheureusement pour moi) mais ça tien sans problèmes depuis 10minutes aussi avec un refresh toutes les 5 secondes
Je précise passerelle enphase en rj45.


EDIT au bout de 10min je suis éjecter de la page IP/home
edit au bout de 20 min sur le routeur : 
20/06/2026 20:22:02 : JSON ERR: IncompleteInput20/06/2026 20:29:06 : JSON ERR: IncompleteInput     <= peut etre parce que je suis en tri sinon les valeurs continues de bouger 
quelle bonheur de retrouver du mouvement meme si les valeurs ne sont pas bonnes pour moi 

Bonsoir  algorytmix,

Les messages d'erreur de décodage de trames JSON je les ai aussi de temps en temps et je ne sais pas pourquoi. Je trouve la communication en Wifi avec les pages Web plus lente ou perturbées ..... de temps en temps mais sinon ça va.
Il y a globalement une demande de plus de ressource de communication sur le Wifi et ça pédale un peu de temps en temps.

Faut que je creuse cet aspect là.

Sinon ça fonctionne aussi chez moi en monophasé pour l'instant.

Question: As tu une navigation lente sur les pages Web aussi ? Sens tu un ralentissement et des fois un affichage qui ne se fait pas bien sur ton navigateur ?

A bientôt pour la version Triphasée ;-)

A+
Je vais préparer une version pour le Triphasé, que je pourrai tester aussi puisque les datas remontent mais sont à zéro ou presque ...... dommage pour le presque car sinon il aurait été possible de faire une version générique.

J'ai passé la journée à creuser et stabiliser une version pour qu'elle fonctionne chez moi, donc là il est l'heure de se poser un peu ..... LOL.

Bah les pages du routeurs sont lentes et parfois buggées faire ctrl + f5 pour vider le cache  et ca repart mais ca as toujours etait apres on en demande peut etre beaucoup a un ESP en wifi effectivement a l'époque le esp32 rj45 n'existait pas aujourd'hui je ferais aussi du filaire pour le routeur.

La page de enphase jai jamais vraiment regarder ca avant mais la c vrais que le chargement est long et que les refresh des infos sont pas fou mais ça marche 
Pour le triphasé je repond présent par avance je n'est pas réussit compiler ma version (enfin gemini)
Répondre

Bonsoir,

Pour ceux qui veulent relire mon code, j'ai ameliorer la gestion memoire, la recuperation et le parsing du json 
(adapté a la lib ArduinoJson V7.x.y)

J'ai surveillé la memoire coté heap en evitant la fragmentation

Cela reste axé sur l'api du firmware V7 de la passerelle en monophase UNIQUEMENT


Cela tourne depuis ce midi sans probleme (pas de desynchro, pas de reboot) et sans ralentissement 

Ca peut servir de base a ceux qui n'arrivent pas a avoir une bonne recuperation des infos du JSON

Si cela peut faire avancer vos tests, fichier en attaché avec la fonction void LectureEnphase()

Bon debug


Pièces jointes
.txt   Source_EnphaseEnvoyV2_Laurent.txt (Taille : 6.67 Ko / Téléchargements : 4)
Répondre

Bonsoir à tous,

Je viens de finaliser une version beaucoup plus rapide et stable de l'implémentation de l'API ivp/meters/readings pour nos Enphase.
J'ai optimiser la récupération des données, et je n'utilise plus la désérialisation des données JSON qui consomme du temps et de la ressource mémoire !

J'ai poussé le luxe de faire une version qui est compatible Monophasé BiPhasé et Triphasé !

Donc si les personnes qui sont en triphasé pouvaient faire le test ça m'arrangerait. Mais je pense avoir fait tout bon ..... à suivre.

En Monophasé tout est OK.

Attention tout de même que si des personnes ont des batteries je ne sais pas si ça change quelque chose ....

Je remets les nouveaux sources et binaire sur mon partage. Les télécharger et jouer avec pour me donner un retour SVP !
EDIT le bon lien : https://drive.google.com/drive/folders/1...sp=sharing

Bonne nuit et à ++

David ROCHE :-)
Répondre

Changement de définition du filtre ArduinoJson

Code :
  // cree un filtre qui récupere uniquement les items intérressant (dans chacune des 8 sections du Json, on exploitera uniquement les 2 premieres sections)
  JsonDocument filter;
  JsonArray filterArray = filter.to<JsonArray>();
 
  JsonObject f0 = filterArray.add<JsonObject>(); // On crée l'objet correspondant au premier élément du tableau source
  f0["actEnergyDlvd"] = true;
  f0["activePower"] = true;
  f0["apparentPower"] = true;
  f0["pwrFactor"] = true;
  f0["voltage"] = true;
  f0["current"] = true;
  f0["freq"] = true;

  JsonArray f0_channels = f0["channels"].to<JsonArray>(); // On crée le filtre imbriqué pour les tableaux "channels"
  JsonObject f0_channels_item = f0_channels.add<JsonObject>();
  f0_channels_item["voltage"] = true;
  f0_channels_item["current"] = true; 

Le deserializeJson reste avec DeserializationOption::Filter(filter)
Merci André Smile ,
Routeur V17.19 (since V2.01) / Source UxI / 5 actions

Si les réponses que je propose bénévolement sur ce forum ne vous plaisent pas, ignorez-les simplement sans me jeter la pierre ! (Ou ne posez pas de question)
Répondre

Salut à tous,
Je vois que je ne suis le seul, je suis arrivé à une version fonctionnel et stable en partant de la version de michy -> Merci.
J'ai remarqué plusieurs pb, notement le Json qui est gros et demande un buffer mémoire élevé: Solution Parser directement depuis le stream, sans buffer intermédiaire => les pages se charge relativement rapidement (pas d'erreur de Parse JSon)

Je vous partage le fichier modifier (mes modif taggé SEB) + le fichier .bin pour ceux qui veule tester
=> Je suis partie de la version v17.21, mon Envoy est câblé, mon ESP32 en wifi, Envoy-S-Metered-EU Version logicielle 8.3.5528

https://transfert.free.fr/TB8WA1c

Bonne nuit et bonne journée de production demain !!!

PS: j'ai mis sur transfert.free.fr je ne dois pas avoir l'option pour joindre des fichiers
Répondre



Atteindre :


Utilisateur(s) parcourant ce sujet :
lahuchette, rdsoft30, 5 visiteur(s)

Moteur MyBB, © 2002-2026 Melroy van den Berg.