(Hier, 06:53 PM)F1ATB a écrit : Je suis prêt à sortir une nouvelle version quand on aura compris le pourquoi de ce comportement.
Ne disposant pas de système Enphase chez moi, il m'est difficile de tester et comprendre. Je compte m'appuyer sur la communauté qui a des développeurs souhaitant résoudre ce problème.
Initialement, lors du premier développement, j'étais connecté à distance à un système Enphase. Je n'ose le faire maintenant car il semble qu'avec le routeur on fait planter le système.
Cordialement
André / F1ATB
Salut André, et à tout le monde,
Je suis en train d'essayer de corriger le problème de connexion du routeur à l'Enphase dans la version 17.21 du routeur.
Je me suis aidé d'une IA qui m'a détecté une potentielle erreur de syntaxe qui empècherait la connexion du routeur à l'Enphase.
J'ai réussi à faire en sorte que le routeur arrive à se connecter en trouvant l'adresse IP du routeur avec le mDNS et récupère ensuite le "session_id" puis enfin le "token".
Cela fonctionne maintenant avec la dernière mise à jour de l'Enphase en v8.3.5528, alors que le code d'origine de la version V17.21 du routeur ne fonctionnait pas chez moi.
Par contre l'interrogation des données de l'Enphase ne fonctionne pas car l'accès à L'API /ivp/meters/reports/consumption ne fonctionne plus ! Pire elle provoque un reboot de l'Enphase qui se met à clignoter rouge sur les 4 leds. Du coup, aucunes réponse n'est donnée par l'Enphase.
La seule API qui fonctionne est /ivp/meters/readings. Le codage n'est pas le même et toutes les informations ne sont pas accessibles.
J'ai réalisé un programme Python pour effectuer une connexion avec récupération de la session_id ainsi que le token, et lorsque j'interroge l'Enphase avec l'API /ivp/meters/reports/consumption, j'obtient un message interessant qui mentionne qu'il y a eu trop d'interrogation. Comme si il y avait une limite du nombre de lecture .....
requests.exceptions.SSLError: HTTPSConnectionPool(host='192.168.1.134', port=443): Max retries exceeded with url: /ivp/meters/reports/consumption (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1082)')))
Ensuite j'ai encore quelques soucis avec la récupération des données avec l'API /ivp/meters/readings, avec mon code python, mais je dois avoir un coquille dans mon code, car j'arrive à récuperer les infos données dans une page Web.
En revanche avec l'API /ivp/meters/readings, n'a pas du tout le même format que l'API /ivp/meters/reports/consumption.
Du coup les calculs qui sont fait ensuite avec les anciennes données, ne peuvent pas être faites avec le code actuel du Routeur.
Du coup, André, est ce que tu pourrais m'expliquer ou me dire quelle sont les définition des variables suivantes ?
PactConso_M
PactReseau
PuissanceS_M_inst
PuissanceI_M_inst
PvaReseau
PVAS_M_inst
PVAI_M_inst
PVA_M_moy
PowerFactor
whDlvdCum
Puissance_M_moy
Je cherche donc à faire en sorte d'utiliser les infos de l'API /ivp/meters/readings pour mettre à jour les variables d'origine de l'application du routeur.
Si tu peux m'éclairer un peu plus .....
PS: j'ai mis la documentation de l'API fournie par Enphase en pièce jointe.
Merci !
A+