Enphase - Envoy - Script - Json Node-Red

Super mais il sont en confinement depuis ce matin il va faloir attendre.

Moi il mon planté mon compte normal et je peut refaire le compte mais pas ajouter de compteur

Pas faut !!!
Ca tombe mal, puisque nous allons avoir du temps pour peaufiner nos installent Jeddom…
C’est ballot !!

Bonjour @olive

J’espère que tu vas bien

Petite question pour laquelle je suis certain que tu vas pouvoir m’aider

Le plugin enphase_prod ne me sert que pour recupere la puissance par panneau puisque les autres info se font via plugin script.
Depuis queques jours le plugin enphase_pro ne se met plus à jour automatiquement
Il n’a pas de cron donc pas possible de forcer sa mise à jour.
Un scénario rafraîchissement ne fonctionne pas non plus. Visiblement pas prévu.
La seule solution que j’ai trouvé c’est de générer un « visible » via mon scénario minute cela génére automatiquement un enregistrement du plugin et la sa fonctionne bien. Les info se mettent à jour toutes les minutes. Même si ça fonctionne comme ça, cela fait un peu bidouille
Y a til une solution plus propre via un script par exemple ?
Merci pour ton aide

Yes je ne me sert absolument pas de enphase pour récuperer les infos des panneaux c’est du script panneau par panneau

l’ip est l’ip de la machine sur laquelle tourne le script ci-dessous

#!/usr/bin/python

import time
import os
import json
import requests
from requests.auth import HTTPDigestAuth
import pprint
import sys

def question_envoy():
    EnvoyBaseURl = 'http://ippasserelle'
    envoyPWD = 'motdepasseenvoy' 
    envoyuser = 'utilisateur'
    
    headers = {'cache-control': 'max-age=0, no-cache'}
    
    envoyUrl = EnvoyBaseURl + '/api/v1/production/inverters'
    
    resp = requests.get(envoyUrl,auth=HTTPDigestAuth(envoyuser,envoyPWD), headers=headers)
    
    if resp.status_code == requests.codes.ok:
       print('ca marche')
       reponse = str(resp.text)
       print ('reponse OK')
       
    else:
        print('ca marche pas')
        reponse=''
        
    print('fin')
    return reponse



#***********************DEBUT DU MODE SERVEUR*******************************

import socket


s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind(('', 8085))
s.listen(5)
print('Attente de connection ...')

while True:
    try:
      conn, addr = s.accept()
      reponse = question_envoy()
      print('Connection de %s' % str(addr))
      request = conn.recv(1024)
      request = str(request)

      conn.send('HTTP/1.1 200 OK\n')
      conn.send('Content-Type: text/html\n')
      conn.send('Connection: close\n\n')

      #reponse='Salut Francky'

      conn.sendall(reponse)
      conn.close()
      print('Fermeture de %s' % str(addr))
      print('Attente de connection ...')
    except KeyboardInterrupt:
      print('interruption clavier')
      sys.exit()

il te faudra lancer au démarage de la machinne qui supporte ce script
et ajuster les paramètres suivant:
EnvoyBaseURl = ‹ http://ippasserelle ›
envoyPWD = ‹ motdepasseenvoy ›
envoyuser = ‹ utilisateur ›

résultat :

Bonjour messieurs,

Au final @Vandoule, j’ai suivi ce qu’avait fait @olive et je récupère tout par script et je n’utilise plus le plugin enphase:

Désolé mes captures sont moins belles que vous :frowning:
Capture2

Cela me donne ca en historique et ca me va très bien:

J’aimerais faire des calculs sur ces valeurs pour retrouver l’info d’import/export journalier qui est dispo dans l’appli mais pas dans les fichiers JSON:

Mais pas eu de retours pour le moment, @olive si tu as une idée, n’hésites pas :slight_smile:.

Il me manque que ces calculs mais j’ai déjà ce qu’il me faut grâce au script (encore merci @olive)

A+

Attention livyo ce dont je parle au dessus permet d’avoir simplement le détail par onduleur a l’aide de api/v1/production/inverters.
et pour ta question j’avait vu ton post mais j’ai pas vraiment d’idée …

Oui j’ai bien vu @olive, j’expliquais « juste » à @Vandoule comment je procède au final sans le plugin enphase avec le plugin script dont tu avais parlé au début de ce fil de discussion.
Dommage si tu n’as pas d’idées pour mes calculs…

Je viens de vérifier mes deux version V3 et V4 elle se mettent a jour toute les deux si jamais essaie de redémarrer le deamon, et le plugin n’a pas de cron parce que sinon il ne ferais un relever seulement toute les minutes au lieu de toute les 10s au minimum

Ok @freeman32 pas pensé. Merci
@olive je vais regarder pour mettre ton scipt des que je sort du taf merci dailleurs et le dispenser totalement de enphase_pro
@Emlivyo pour ton injection si tu as un linky se serai plus simple de demander à edf de te passer en pro comme je l’explique plus haut dans ce fil pour récupérer tes valeurs

ok n’hésite pas si c’est pas clair qq part

ok merci a toi

Salut @olive

Jai essaye de mettre en œuvre ton scrip pour récupérer mes onduleurs mais je t’avoue que je patauge avec cette procédure réalisation de script qui m’échappe.
Ca fonctionne pas il m’affiche des erreurs. Multiplie le code. Bref des truc s bizarres que je ne maîtrise pas mais qui m’intéresse bigrement d’essayer Je suis donc à la ramasse
Pourrais tu soit faire un tuto un peu plus détaillé dans les actions à suivre les unes derrière les autres ou sinon on se cale en MP si tu préfères e pas polluer ce fil car la on est plus dans le cours de scrip :laughing: merci pour ton aide

Merci à toi

ok
1 a tu remis les paramètres de ta passerelle dans le script ?
2 a tu donner des droits d’execution au script chmod 777 fichierscript.py
3 arrive tu dans une console a lancer ./fichierscript.py

une fois lancé ne ferme pas la console

ouvre un navigateur et vérifie qu’il n’y a pas d’erreur tu doit voir a peut prés ca

ce script est un micro serveur web qui d’un coté interroge ta passerelle et de l’autre renvoi du json sur une requette http.

si ca ca fonctionne c’est cette adresse que tu doit utiliser dans ton plugin-script

Bonjour juste pour vous prévenir que depuis hier mes infos de production remonte par mon téléinfo, et je n’ai même pas appelé EDF pour le faire, j’ai reçu un relevé d’injection de mon compteur, est ce que ENEDIS aurai activer le mode producteur en même temps que le relevé ? bonne question en tous cas belle surprise hier :slight_smile:

Bonjour,

Je suis en pleine recherche d’info concernant une future installation pv, et ton screen shot Olive m’interpelle :wink: :stuck_out_tongue_winking_eye:
Ton install se compose de PV avec micro onduleur emphase avec passerelle emphase std, c’est bien ça ?. Et je vois que tu as des batteries pylontech, il me semblait qu’il n’était pas possible de mettre d’autre batterie que ceux vendu par emphase ?

Merci à tous pour le taf fait;)
++
Ludo

Oui on peut utiliser des batteries de tout type, dans mon cas c’est indépendant du système de production solaire hormis 2 mesure par clamp 1 sur la production 1 sur le réseau le système calcul dés qu’il y a surproduction il y a charge des batteries si pas pleine d’une part et d’autre par des qu’il y a consommation sur le réseau et batterie pas vide production de celle-ci.

Merci de ton retour fort intéressant Olive :wink:
Donc si je comprends bien tu fais par exemple un scénario jeedom qui si la production solaire est supérieure à la production maison alors on vient charger les pylontec ?

Au plaisir
Ludo

Il me vient une autre question, vraiment intéressant en tout cas ce que tu fais :wink: je profite si c’est possible :grimacing:
Tu arrives à récupérer ta production pv si tu as une coupure du réseau EDF ?
Merci

Non j’ai des micro-onduleurs enphase leur norme respecte le fait que si le secteur est absent ils arrête de produire

Pour ce qui est du systeme de batterie il n’y a pas de jeedom la dedans
c’est entièrement autonome et indépendant …