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
(19-06-2026, 06:58 AM)bujon86 a écrit : HEllo,
je l'avais écrit plus haut mais pourquoi ne pas utiliser l'adresse : https://envoy/production.json?details=1
On a toutes les données, j'ai un script python qui me récupère toutes les données de production/ consommation et qui tape sur cette adresse et ça fonctionne toujours même avec la dernière version du firmware.
...

Hello.

Ton script te retourne les valeurs en temps réel ? Avec quelle fréquence ?

Je me connecte à la page et le temps d'acquisition des infos est particulièrement long chez moi. 

Merci pour la piste tout de même.
Répondre

Bonjour à tous,

Hier j'ai réussi a avoir quelques valeurs remontées de l'Enphase avec sa dernière version.
Il y a encore quelques détails a régler, mais globalement, la connexion à l Enphase est OK avec récupération de Token puis la lecture de l'api /ivp/meters/readings est opérationnelle partiellement car il semble que le code ne soit pas encore parfait pour correctement indexer les valeurs. Mais ça ne m'inquiette pas, le principal est de récupérer les informations remontée de l'Enphase et ça, ça semble être OK.
Je vais me pencher à fiabiliser le code ce week-end. J'espère avoir quelque chose à partager à tous pour avoir une solution avec Enphase.
Je regarderai aussi l'autre api qui a été proposée plus haut. Mais je considère qu'à partir du moment ou on récupère les bonnes infos quelque part, peut importe l'api, ça devrait fonctionner.
Pour réaliser la mise au point il me faudra me connecter directement en USB sur l'ESP32 pour avoir le debug en port Serie  ...... Chez moi la connexion avec putty avec Telnet ne fonctionne pas ...... la connexion se fait mais je n'ai rien qui s'affiche ...... je ne comprends pas pourquoi, si André ou quelqu'un d'autre à une idée, je suis preneur car, pour me connexter en USB, je suis obligé de tirer une ralonge et ouvrir le boitier du routeur, ce qui me fatigue .....
Je tiens tout le monde au courant de mes avancée ce week-end. J'espère vraiement arriver à faire tourner les choses !
Répondre

(19-06-2026, 06:43 AM)Alain_C38 a écrit :
(19-06-2026, 12:40 AM)michy a écrit :
(18-06-2026, 10:07 PM)Alain_C38 a écrit : J'ai copier-coller ton code (très très différent). ça compile sans problème. Ca tourne sur l'ESP32, mais aucune récupération de données. Tout est à zéro.

Les derniers essais avec cmichel (membre team chargeur VE) sont prometteurs

dans mon code, comme bug j'avais l'url de l'API (manque un S a meters et un S a readings)


code en PJ, non testé (même pas compilé, il peu rester quelques bug)

il faudrait faire un retour en donnant la version de votre firmware

De quel firmware ? Je suis en v8.3.5528 sur la passerelle

voir pj pour erreurs
Le code de michy que je viens de tester a 2 erreurs qui empêche la compilation, le voilà corrigé.
Dans ce code on prend en compte le monophasé et le triphasé ce qui est trés intéressant pour gérer toutes les situations
Il subsiste un problème de gestion de la puissance apparente qui est toujours en soutiré quand on est en production, mais à revoir surement un problème de signe..
CMichel

.txt   LectureEnphase2.txt (Taille : 7.95 Ko / Téléchargements : 19)
Routeur v12 / routage cumulus 1.9kW triphasé avec 2 x SSR40A H
Source : Envoy Metered en V8
PV : 3Kw triphasé, 8 panneaux LONGI 375w, 8 x IRQ7+, en autoconsommation avec CACSI
RMS Station de charge VE-RMS, version ESP32 ou ESP32 & Arduino Uno
Répondre

(19-06-2026, 07:59 AM)bol2riz a écrit :
(19-06-2026, 06:58 AM)bujon86 a écrit : HEllo,
je l'avais écrit plus haut mais pourquoi ne pas utiliser l'adresse : https://envoy/production.json?details=1
On a toutes les données, j'ai un script python qui me récupère toutes les données de production/ consommation et qui tape sur cette adresse et ça fonctionne toujours même avec la dernière version du firmware.
...

Hello.

Ton script te retourne les valeurs en temps réel ? Avec quelle fréquence ?

Je me connecte à la page et le temps d'acquisition des infos est particulièrement long chez moi. 

Merci pour la piste tout de même.


C'est très rapide en curl ou en python, mon script actualise toutes les 3 secondes.
Répondre

il faudrait tester avec une plus grosse fréquence voir si la solution tient la route car de ce que j'ai eu comme retour lors de l'analyse du code, le routeur fait des appels vers la passerelles toutes les 200ms (et l'enphase n'est même pas de souvenir le plus efficace pour la régulation du flux) donc il faut que ces 200ms restent au moins la cible. Si c'est moins ça pourrait être la raison pour laquelle cette solution n'a pas été prise.
Peux-tu tester avec une plus grosse fréquence voir si la passerelle se met en erreur et éventuellement à partir de quelle fréquence elle le fait ?

Merci pour ton aide.
Répondre

(19-06-2026, 06:58 AM)bujon86 a écrit : HEllo,
je l'avais écrit plus haut mais pourquoi ne pas utiliser l'adresse : https://envoy/production.json?details=1
On a toutes les données, j'ai un script python qui me récupère toutes les données de production/ consommation et qui tape sur cette adresse et ça fonctionne toujours même avec la dernière version du firmware.
Voici la réponse sur cette adresse.
En attendant une correction j'ai créer un script python qui simule le résultat d'un Shelly EM avec les données de https://envoy/production.json?details=1 ci dessous :

Cette solution ne gère pas le cas d'installation en triphasé, je viens de tester sur mon installation, on a en triphasé par exemple que la tension, l'intensité totale des 3, limite donc l'exploitation surtout en plus pour gérer la borne VE et éviter le dépassement d'abonnement par exemple:
Code :
"production": [
    {
      "type": "inverters",
      "activeCount": 8,
      "readingTime": 1781870271,
      "wNow": 2365,
      "whLifetime": 7015250
    },
    {
      "type": "eim",
      "activeCount": 1,
      "measurementType": "production",
      "readingTime": 1781870538,
      "wNow": 2353.529,
      "whLifetime": 16541679.642,
      "varhLeadLifetime": 6.863,
      "varhLagLifetime": 4481479.808,
      "vahLifetime": 20615122.289,
      "rmsCurrent": 10.227,
      "rmsVoltage": 695.28,
      "reactPwr": 102.751,
      "apprntPwr": 2371.02,
      "pwrFactor": 1.0,
      "whToday": 11918.642,
      "whLastSevenDays": 134280.642,
      "vahToday": 13020.289,
      "varhLeadToday": 1.863,
      "varhLagToday": 1480.808
    }
  ],
  "consumption": [
    {
      "type": "eim",
      "activeCount": 1,
      "measurementType": "total-consumption",
      "readingTime": 1781870538,
      "wNow": 145.889,
      "whLifetime": 13827714.352,
      "varhLeadLifetime": 9352376.347,
      "varhLagLifetime": -3690152.586,
      "vahLifetime": 26389338.398,
      "rmsCurrent": 0.568,
      "rmsVoltage": 695.14,
      "reactPwr": -199.277,
      "apprntPwr": 131.705,
      "pwrFactor": 1.0,
      "whToday": 993121.352,
      "whLastSevenDays": 994273.352,
      "vahToday": 12975.398,
      "varhLeadToday": 992941.347,
      "varhLagToday": 0.0
    },
    {
      "type": "eim",
      "activeCount": 1,
      "measurementType": "net-consumption",
      "readingTime": 1781870538,
      "wNow": -2207.64,
      "whLifetime": -2713646.43,
      "varhLeadLifetime": 9352383.21,
      "varhLagLifetime": 791327.222,
      "vahLifetime": 26389338.398,
      "rmsCurrent": -9.659,
      "rmsVoltage": 695.14,
      "reactPwr": -302.028,
      "apprntPwr": -2238.478,
      "pwrFactor": -1.0,
      "whToday": 0,
      "whLastSevenDays": 0,
      "vahToday": 0,
      "varhLeadToday": 0,
      "varhLagToday": 0
    }
  ],
  "storage": [
    {
      "type": "acb",
      "activeCount": 0,
      "readingTime": 0,
      "wNow": 0,
      "whNow": 0,
      "state": "idle"
    }
  ]
Alors qu'avec la solution de michy et https://envoy/ivp/meters/readings on a le monophasé de géré et le triphasé
Code :
[
    {
        "eid": 704643328,
        "timestamp": 1781870968,
        "actEnergyDlvd": 16541960.455,
        "actEnergyRcvd": 305429.649,
        "apparentEnergy": 20615405.317,
        "reactEnergyLagg": 4481492.025,
        "reactEnergyLead": 6.863,
        "instantaneousDemand": 2339.691,
        "activePower": 2339.691,
        "apparentPower": 2358.352,
        "reactivePower": 102.967,
        "pwrFactor": 0.991,
        "voltage": 697.602,
        "current": 10.135,
        "freq": 50.0,
        "channels": [
            {
                "eid": 1778385169,
                "timestamp": 1781870968,
                "actEnergyDlvd": 4124988.889,
                "actEnergyRcvd": 105009.56,
                "apparentEnergy": 5434835.437,
                "reactEnergyLagg": 1132568.89,
                "reactEnergyLead": 1.619,
                "instantaneousDemand": 591.974,
                "activePower": 591.974,
                "apparentPower": 598.492,
                "reactivePower": 24.978,
                "pwrFactor": 0.991,
                "voltage": 231.027,
                "current": 2.591,
                "freq": 50.0
            },
            {
                "eid": 1778385170,
                "timestamp": 1781870968,
                "actEnergyDlvd": 6221344.074,
                "actEnergyRcvd": 93270.809,
                "apparentEnergy": 6484338.125,
                "reactEnergyLagg": 1660778.4,
                "reactEnergyLead": 4.327,
                "instantaneousDemand": 880.406,
                "activePower": 880.406,
                "apparentPower": 883.874,
                "reactivePower": 39.264,
                "pwrFactor": 0.988,
                "voltage": 233.692,
                "current": 3.784,
                "freq": 50.0
            },
            {
                "eid": 1778385171,
                "timestamp": 1781870968,
                "actEnergyDlvd": 6195627.492,
                "actEnergyRcvd": 107149.28,
                "apparentEnergy": 8696231.755,
                "reactEnergyLagg": 1688144.734,
                "reactEnergyLead": 0.917,
                "instantaneousDemand": 867.312,
                "activePower": 867.312,
                "apparentPower": 875.986,
                "reactivePower": 38.725,
                "pwrFactor": 0.994,
                "voltage": 232.883,
                "current": 3.76,
                "freq": 50.0
            }
        ]
    },
    {
        "eid": 704643584,
        "timestamp": 1781870968,
        "actEnergyDlvd": 8520894.353,
        "actEnergyRcvd": 11234958.044,
        "apparentEnergy": 26389599.525,
        "reactEnergyLagg": 791327.33,
        "reactEnergyLead": 9352410.223,
        "instantaneousDemand": -2157.85,
        "activePower": -2157.85,
        "apparentPower": 2182.111,
        "reactivePower": -201.731,
        "pwrFactor": -0.993,
        "voltage": 697.396,
        "current": 9.383,
        "freq": 50.0,
        "channels": [
            {
                "eid": 1778385425,
                "timestamp": 1781870968,
                "actEnergyDlvd": 1894095.751,
                "actEnergyRcvd": 2933632.019,
                "apparentEnergy": 6365147.061,
                "reactEnergyLagg": 684321.506,
                "reactEnergyLead": 2580047.75,
                "instantaneousDemand": -588.431,
                "activePower": -588.431,
                "apparentPower": 597.304,
                "reactivePower": -103.02,
                "pwrFactor": -0.988,
                "voltage": 230.831,
                "current": 2.59,
                "freq": 50.0
            },
            {
                "eid": 1778385426,
                "timestamp": 1781870968,
                "actEnergyDlvd": 2276635.346,
                "actEnergyRcvd": 4825657.805,
                "apparentEnergy": 10347162.312,
                "reactEnergyLagg": 87650.563,
                "reactEnergyLead": 3414919.908,
                "instantaneousDemand": -787.688,
                "activePower": -787.688,
                "apparentPower": 795.475,
                "reactivePower": -0.766,
                "pwrFactor": -0.991,
                "voltage": 233.735,
                "current": 3.404,
                "freq": 50.0
            },
            {
                "eid": 1778385427,
                "timestamp": 1781870968,
                "actEnergyDlvd": 4350163.256,
                "actEnergyRcvd": 3475668.22,
                "apparentEnergy": 9677290.152,
                "reactEnergyLagg": 19355.261,
                "reactEnergyLead": 3357442.565,
                "instantaneousDemand": -781.731,
                "activePower": -781.731,
                "apparentPower": 789.332,
                "reactivePower": -97.945,
                "pwrFactor": -1.0,
                "voltage": 232.83,
                "current": 3.39,
                "freq": 50.0
            }
        ]
    },
    {
        "eid": 1023410688,
        "timestamp": 1781870954,
        "actEnergyDlvd": 0.0,
        "actEnergyRcvd": 0.0,
        "apparentEnergy": 0.0,
        "reactEnergyLagg": 0.0,
        "reactEnergyLead": 0.0,
        "instantaneousDemand": 0.0,
        "activePower": 0.0,
        "apparentPower": 0.0,
        "reactivePower": 0.0,
        "pwrFactor": 0.0,
        "voltage": 0.0,
        "current": 0.0,
        "freq": 0.0,
        "channels": [
            {
                "eid": 2097152513,
                "timestamp": 1781870954,
                "actEnergyDlvd": 0.0,
                "actEnergyRcvd": 0.0,
                "apparentEnergy": 0.0,
                "reactEnergyLagg": 0.0,
                "reactEnergyLead": 0.0,
                "instantaneousDemand": 0.0,
                "activePower": 0.0,
                "apparentPower": 0.0,
                "reactivePower": 0.0,
                "pwrFactor": 0.0,
                "voltage": 0.0,
                "current": 0.0,
                "freq": 0.0
            },
            {
                "eid": 2097152258,
                "timestamp": 1781870954,
                "actEnergyDlvd": 0.0,
                "actEnergyRcvd": 0.0,
                "apparentEnergy": 0.0,
                "reactEnergyLagg": 0.0,
                "reactEnergyLead": 0.0,
                "instantaneousDemand": 0.0,
                "activePower": 0.0,
                "apparentPower": 0.0,
                "reactivePower": 0.0,
                "pwrFactor": 0.0,
                "voltage": 0.0,
                "current": 0.0,
                "freq": 0.0
            },
            {
                "eid": 2097152515,
                "timestamp": 1781870954,
                "actEnergyDlvd": 0.0,
                "actEnergyRcvd": 0.0,
                "apparentEnergy": 0.0,
                "reactEnergyLagg": 0.0,
                "reactEnergyLead": 0.0,
                "instantaneousDemand": 0.0,
                "activePower": 0.0,
                "apparentPower": 0.0,
                "reactivePower": 0.0,
                "pwrFactor": 0.0,
                "voltage": 0.0,
                "current": 0.0,
                "freq": 0.0
            }
        ]
    }
]
Je pense ne pas être le seul et enphase gére le monophasé et le triphasé donc pourquoi ne pas mettre en place une solution qui gère tout et aussi le stockage.
Il manque toutes les informations par phase qui sont dans la solution /ivp/meters/readings, tension, intensité ...
cmichel
Routeur v12 / routage cumulus 1.9kW triphasé avec 2 x SSR40A H
Source : Envoy Metered en V8
PV : 3Kw triphasé, 8 panneaux LONGI 375w, 8 x IRQ7+, en autoconsommation avec CACSI
RMS Station de charge VE-RMS, version ESP32 ou ESP32 & Arduino Uno
Répondre

@cmichel et @michy

Je viens de tester la version 2 (compilable sans pb) que tu donnais cmichel juste avant.
J'ai modifié toutes les lignes avec
Code :
if (!clientSecu->connect(host, 443, 3000))
par
Code :
if (!clientSecu->connect(host, 443, 10000))

ainsi, j'ai beaucoup moins de pb de connexions avec la passerelle.

Par contre, je n'ai quasiment aucune valeurs de puissances et elles sont inexactes.

D'autre part, beaucoup d'erreurs dans le moniteur série :

Code :
15:36:13.024 -> Charge Boucle générale (coeur 1) en ms - Min : 2 Moy : 2  Max : 2
15:36:13.024 -> Mémoire RAM libre actuellement: 24236 byte
15:36:13.024 -> Mémoire RAM libre minimum: 2528 byte
15:36:13.024 -> ESP32 ON depuis : 0.01 heures
15:36:13.221 -> 19/06/2026 15:36:12 : Connection failed to RTE server :www.services-rte.com
15:36:13.253 -> Connected to Envoy-S server https:/x.x.x.x
15:36:14.771 -> Erreur parsing ArduinoJSON
15:36:16.945 -> Connected to Envoy-S server https://
15:36:17.440 -> Erreur parsing ArduinoJSON
15:36:19.385 -> Connected to Envoy-S server https://
15:36:19.880 -> Erreur parsing ArduinoJSON
15:36:21.834 -> Connected to Envoy-S server https://
15:36:24.309 -> Connected to Envoy-S server https://
15:36:24.902 -> Erreur parsing ArduinoJSON
15:36:26.748 -> Connected to Envoy-S server https://
15:36:27.373 -> Erreur parsing ArduinoJSON
15:36:29.221 -> Connected to Envoy-S server https://
15:36:29.814 -> Erreur parsing ArduinoJSON
15:36:31.692 -> Connected to Envoy-S server https://
15:36:32.284 -> Erreur parsing ArduinoJSON
15:36:34.130 -> Connected to Envoy-S server https://
15:36:34.721 -> Erreur parsing ArduinoJSON
15:36:36.596 -> Connected to Envoy-S server https://
15:36:37.487 -> Erreur parsing ArduinoJSON
15:36:39.467 -> Connected to Envoy-S server https://x.X.X.X
15:36:39.665 -> separation header / body non trouvée
15:36:42.205 -> Erreur parsing ArduinoJSON
15:36:43.026 ->
--------------------------------------------------------------
ESP32 (v117,20 et IP fixe) + sonde température + SSR -- Cumulus/Chauffe-Eau
Source données serveur Enphase 7.

Répondre

*** INFO ***

J’ai fais qq tests.
1/ Mon gateway Enphase fonctionne très bien avec la dernière version ET avec routeur ESP32 éteint.
2/ Mon gateway Enphase plante au bout de qq minutes DES QUE le routeur ESP32 est allumé.

Je sens que votre correction ne va pas tarder. Merci d’avance !!!
ET n’oubliez pas de commenter votre code :-) ça servira au prochain.
DMC 6 Kw / IQ8P / Enphase Meter / ESP32 / SSR
Urban Solar Energy : batterie virtuelle 
Répondre

(19-06-2026, 03:50 PM)Alain_C38 a écrit : @cmichel et @michy

Je viens de tester la version 2 (compilable sans pb) que tu donnais cmichel juste avant.
J'ai modifié toutes les lignes avec
Code :
if (!clientSecu->connect(host, 443, 3000))
par
Code :
if (!clientSecu->connect(host, 443, 10000))

ainsi, j'ai beaucoup moins de pb de connexions avec la passerelle.

Par contre, je n'ai quasiment aucune valeurs de puissances et elles sont inexactes.

D'autre part, beaucoup d'erreurs dans le moniteur série :

Code :
15:36:13.024 -> Charge Boucle générale (coeur 1) en ms - Min : 2 Moy : 2  Max : 2
15:36:13.024 -> Mémoire RAM libre actuellement: 24236 byte
15:36:13.024 -> Mémoire RAM libre minimum: 2528 byte
15:36:13.024 -> ESP32 ON depuis : 0.01 heures
15:36:13.221 -> 19/06/2026 15:36:12 : Connection failed to RTE server :www.services-rte.com
15:36:13.253 -> Connected to Envoy-S server https:/x.x.x.x
15:36:14.771 -> Erreur parsing ArduinoJSON
15:36:16.945 -> Connected to Envoy-S server https://
15:36:17.440 -> Erreur parsing ArduinoJSON
15:36:19.385 -> Connected to Envoy-S server https://
15:36:19.880 -> Erreur parsing ArduinoJSON
15:36:21.834 -> Connected to Envoy-S server https://
15:36:24.309 -> Connected to Envoy-S server https://
15:36:24.902 -> Erreur parsing ArduinoJSON
15:36:26.748 -> Connected to Envoy-S server https://
15:36:27.373 -> Erreur parsing ArduinoJSON
15:36:29.221 -> Connected to Envoy-S server https://
15:36:29.814 -> Erreur parsing ArduinoJSON
15:36:31.692 -> Connected to Envoy-S server https://
15:36:32.284 -> Erreur parsing ArduinoJSON
15:36:34.130 -> Connected to Envoy-S server https://
15:36:34.721 -> Erreur parsing ArduinoJSON
15:36:36.596 -> Connected to Envoy-S server https://
15:36:37.487 -> Erreur parsing ArduinoJSON
15:36:39.467 -> Connected to Envoy-S server https://x.X.X.X
15:36:39.665 -> separation header / body non trouvée
15:36:42.205 -> Erreur parsing ArduinoJSON
15:36:43.026 ->
J'ai testé aussi sur ma version puisque je suis encore 8.3.5169 et pas sur la dernière version et j'ai des valeurs qui sont assez correcte, et avec la connexion qui reste ouverte j'ai de temps en temps quelques erreurs sans rien toucher au code et 0,6s.
Alors qu'avec la version où on ferme la connexion (comme le fait André) j'en ai pas avec le code de la 17.21 sans retouche.
Routeur v12 / routage cumulus 1.9kW triphasé avec 2 x SSR40A H
Source : Envoy Metered en V8
PV : 3Kw triphasé, 8 panneaux LONGI 375w, 8 x IRQ7+, en autoconsommation avec CACSI
RMS Station de charge VE-RMS, version ESP32 ou ESP32 & Arduino Uno
Répondre

Pour aider ..
ne faudrait il pas limiter / ralentir les demandes  de l'ESP32  sur l'Enphase ?
Comparativement au monitor de l'application d'Enphase qui doit être +- 3 minutes entre chaque information  ( vraiment trop longue Smile 
a+
6 kWc - Enphase iq8hc
Enphase envoy metered
Répondre



Atteindre :


Utilisateur(s) parcourant ce sujet :
3 visiteur(s)

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