Routeur photovoltaïque – Installation manuelle du logiciel

Routeur Multi Source

Il existe 2 méthodes pour installer le logiciel binaire du routeur photovoltaïque F1ATB dans l’ESP32. Une méthode en ligne rapide visible ici et la méthode manuelle décrite ci-après qui donne accès au code source.

Code Source

L’ensemble du code est installable en utilisant l’outil de développement IDE Arduino. Il n’y a pas de code à écrire, uniquement une compilation faite par l’IDE et un téléchargement du binaire dans l’ESP32. C’est le même code quelle que soit la configuration modulaire choisie et quel que soit le capteur de mesure. Il est injecté dans un premier temps par la liaison série, puis une fois en place, on peut le modifier si besoin par le Wifi. Si vous n’êtes pas familier de l’IDE Arduino, voir les détails ici. Il faut, dans les préférences de l’IDE, faire appel au gestionnaire de carte de « Espressif » qui développe l’ESP32. Allez dans Fichier / Préférences et mettez l’adresse : https://dl.espressif.com/dl/package_esp32_index.json

Variantes code Source

Fin Mai 2024, Espressif a mis en ligne une nouvelle version de la bibliothèque qui gère l’ESP32. On est passé de la version 2.0.17 à la version 3.00. Laquelle s’est avérée buggé et a été remplacée quelques jours après par la 3.01. C’est un changement important qui a nécessité une reprise de certaines parties du code du routeur.

Allez sur votre Arduino IDE, pour identifier la bibliothèque ESP32 en cours suivant les mises à jour que vous avez accepté ou non.

Le code source est disponible ici, téléchargez la version appropriée à votre version de la carte ESP32:

Version ESP32V 2.0.17V 3.0.1 ou au dessus
Version Routeur V9_01 et en dessousV9_02 et au dessus

Vérifiez que vous avez les bibliothèques installées sur votre IDE Arduino :

  • PubSubClient
  • OneWire
  • DallasTemperature
  • UrlEncode

Ensuite vous devez compiler le logiciel en précisant à l’IDE Arduino que vous avez une carte ESP32.
Sélectionner la carte ESP32 Dev Module ainsi que le port de COM de Windows sur lequel est branchée la carte par le port série puis lancez la compilation et le téléchargement. Avec certaines cartes, si le téléversement du code dans l’ESP32 ne se fait pas, il faut presser sur le bouton boot au début de la tentative de téléversement.

Partition Mémoire

Le passage en version 3.0.1 de la bibliothèque de l’ESP32 a fait exploser le volume mémoire occupé de 90% à 99% de la disponibilité. Il est possible de modifier la partition de la mémoire Flash et ne plus utilser celle par défaut.

A partir de la version 10 du routeur et avant compilation, il faut aller dans : Outils–> Partition Scheme –> Minimal SPIFFS

Ainsi le volume occupé tombe à 66% environ, ce qui laisse de la place pour les évolutions futures.

On ne peut installer la V10 à partir de la V9.x en utilisant l’OTA. Il faut se connecter à l’ESP32. Démonter votre ESP32 ou amener votre PC à côté du routeur. Désolé pour la gêne occasionnée.

Comme tous les paramètres seront perdus, faites l’installation rapide à partir de la page web en étant branché en USB. Cela vous évite la compilation et la courses aux bibliothèques…
https://f1atb.fr/fr/routeur-photovoltaiq…-logiciel/

Historique des versions V8.x, V9.x

  • V8.09_RMS
    • Ralentissement appel Enphase de 200 à 400ms
    • Retrait bibliothèque obsolète ArduinoJson
    • Réorganisation sorties vers broker MQTT
  • V9.00_RMS
    •     Stockage des températures avec une décimale
    •     Simplification changement de nom de réseau WIFI
    •     Choix mode Wifi avec ou sans veille
    •     Sélection source de température
    •     Source de puissance reçue via MQTT
    •     Souscription MQTT à une température externe
    •     Souscription MQTT pour forcer On ou Off les actionneurs.
  • V9.01_RMS
    • Validation puissance apparente pour les configurations Linky et CACSI
    • Dernière version avec la bibliothèque ESP32 V2.0.17
  • V9.02_RMS
    • Suite au passage de la bibliothèque ESP32 en Version 3.0.1 importants changement pour le routeur sur le WIFI, les Timers, Le Watchdog et la partition mémoire FLASH.
    • Filtrage des températures pour tolérer une perte éventuelle de mesures
  • V9.03_RMS
    • Suite au changement de bibliothèque ESP32 en V3.0.1, le scan réseau pour un changement de nom de WIFI ne fonctionnait plus. Scan fait maintenant au boot.
  • V10.00
    • OTA par le Web directement en complément de l’Arduino IDE
    • Modification des calculs de puissance en UxIx3 pour avoir une représentation similaire au Linky (Merci PhDV61)
    • Modification de la surveillance Watchdog
  • V11.00
    • Possibilité de définir le SSID et le mot de passe du Wifi par le port série
    • Import / Export des paramètres et actions
    • Relance découverte MQTT toutes les 5mn
    • Réécriture de la surveillance par watchdog suite au changement de bibliothèque 3.0.x carte ESP32
    • Estimation temps équivalent d’ouverture max du Triac et relais cumulée depuis 6h du matin. Prise en compte de la puissance en sin² du mode découpe
    • Correction d’un bug de syntaxe non détecté par le compilateur depuis la version V9 affectant les communications d’un ESP esclave vers le maître
    • Affichage de l’occupation RAM
  • V11.10
    • Nouvelle source de mesure Shelly Pro Em
  •  V11.11
    • Correction bug mesure de température distante
  •  V11.12 à V11.16
    • Correction bugs et évolutions de bibliothèques mesure de température distante
  • V11.17
    • Compilation avec la nouvelle version 3.03 de la carte ESP32
    • Arrêt routage si température non valide
  • V11.18
    •  Recherche de la couleur Tempo non plus chez EDF mais RTE (sauf pour senseur Linky)
    •  Améliorations UxIx3

Mise à jour des anciennes versions

Dans le cas d’une mise à jour des anciennes versions V4, V5, V6, V7,V8, vers la V9,V10 ou V11, notez bien sur une feuille de papier les paramètres et réglages. La nouvelle version V11.x, virginise la mémoire ROM au premier lancement. Il faudra faire comme un premier lancement en se connectant au point d’accès Wifi de l’ESP32 à l’adresse IP 192.168.4.1 ou par le port série.

Si vous utilisez également l’affichage distant de la « maisonnette », pensez à mettre à jour le logiciel :
https://f1atb.fr/affichage-a-distance-consommation-ou-surproduction-electrique/

Sauvegarde des paramètres

Depuis la version 11 du routeur, il est possible de sauvegarder les paramètres pour les re-installer sur une nouvelle configuration à venir ou un autre ESP32.

Moniteur Série

Après une opération de téléchargement, ouvrez le moniteur série de l’Arduino en allant sur le menu Outils. Vérifiez à droite de la fenêtre qui s’est ouverte que vous êtes à 115200 baud. L’ESP32 vous fournira de nombreuses informations comme l’adresse IP qu’on lui a attribuée etc.

Premier lancement du programme

CONFIGURATION PAR LE PORT SÉRIE (DEPUIS LA VERSION 11.00)

Si vous êtes connecté par le port série à la carte ESP32, après l’installation, il faut indiquer le nom du réseau Wifi et son mot de passe. Cette connexion peut être faite avec le moniteur de l’IDE Arduino ou depuis votre navigateur web. Il y a 3 commandes clés à entrer :

  • ssid: nom_du_reseau
  • password: mot de passe
  • restart
CONFIGURATION PAR LE WEB

Au premier lancement du programme dans l’ESP32, le logiciel ne connaît pas le nom et le mot de passe de votre réseau Wifi à la maison. Il va créer son propre Wifi en passant en mode point d’accès pour que vous vous y connectiez. Sur votre smartphone (déconnectez votre accès mobile) ou PC portable, regardez la liste des WiFi disponibles. Connectez-vous à celui qui porte le nom ESP-RMS….., il n’y a pas de mot de passe. il n’y a pas de mot de passe. Parfois, il est nécessaire de rafraichir la liste des Wifi sur votre smartphone.

Ouvrez un navigateur web et rentrez l’adresse 192.168.4.1 qui correspond à l’ESP32. Il va vous renvoyer une page vous demandant le nom du WiFi de la maison auquel se connecter à l’avenir et le mot de passe.

Votre box internet va attribuer à l’ESP32 une adresse IP sur votre réseau maison.

Reconnectez vous au Wifi de la maison avec votre smartphone ou PC. Rentrez l’adresse IP attribuée à l’ESP32 dans un navigateur Web.

Adresse IP Fixe

Si vous souhaitez fixer vous-même l’adresse IP, allez faire un tour auprès de votre box à la rubrique réseau / DHCP, vous trouverez le champ des adresses dynamiques. Par exemple, souvent les Livebox d’Orange attribuent des adresses dynamiques DHCP entre 192.168.1.10 et 192.168.1.150. Il vous reste alors un champ libre pour attribuer vos propres adresses entre 192.168.1.151 et 192.168.1.253. Fréquemment, les .254 et .255 sont réservés à autre chose. Vous pouvez ainsi donner comme adresse 192.168.1.200 à l’ESP32 si aucune autre machine sur le réseau occupe déjà cette adresse. Ce forçage de l’adresse IP, se fait dans la page « Paramètres » de l’ESP32.

IP Address gateway correspond à l’adresse IP de votre box. C’est elle qui fait la passerelle (gateway) avec le monde extérieur. Chez Orange, c’est en général 192.168.1.1. Chez Free, c’est plutôt 192.168.0.254. Les trois premiers chiffres 192.168.0 ou 192.168.1 doivent être les mêmes pour la box et votre ESP.

Clignotement des LEDs

Les 2 LEDs clignotent en phase toutes les 300ms. L’ESP32 cherche à se connecter au WIFI de la maison que vous lui avez défini.

Les 2 LEDS clignotent en opposition de phase. L’ESP32 ne trouve pas le WIFI, il est en mode Point d’Accès. (AP) en créant son propre réseau . Ouvrez votre smartphone et connectez-vous comme pour un premier lancement de programme.

La LED jaune clignote toutes les 2s environ. C’est bon signe, l’ESP32 reçoit des mesures de tension, puissance etc.
La LED verte clignote, le Triac est ouvert. Plus elle clignote, plus l’ouverture est importante.

Arduino OTA

Le code inclut la possibilité de le mettre à jour non pas par la liaison série entre le PC et l’ESP mais via le Wifi. C’est la fonction Arduino OTA (On The Air). Dans l’IDE Arduino, allez à Outils/Port/Réseau Port vous y trouverez mentionné la carte ESP32 du routeur. Sélectionnez là et le téléchargement se fera via le Wifi et non plus le port série. L’IDE Arduino vous demande un mot de passe lors de la compilation. Répondez n’importe quoi, 1 lettre minimum. Cette fonctionnalité est bien utile, une fois le routeur implanté probablement loin de votre PC.

Watchdog

Le fonctionnement de l’ESP32 est surveillé par un watchdog (chien de garde). Si l’ESP32 se bloque, ne reçoit pas de données de puissance pendant 180s, ou n’est plus connecté en Wifi il se reset.

Remarques

Si vous regardez les premières lignes du programme (Solar_Router_V9_01_RMS.ino), il y a 2 constantes :

#define HOSTNAME « RMS-ESP32-« 

#define CLE_Rom_Init 812567808

La première définie le début du nom de votre ESP sur le réseau, le deuxième est une clé qui permet de tester si le programme a déjà tourné. Au premier lancement, l’ESP ayant peu de chance de trouver cette clé en mémoire, la mémoire de stockage en ROM est virginisée. Par la suite, elle contiendra cette clé et tous les paramètres de configuration et l’état des compteurs d’énergie en Wh chaque jour à 0h. Si vous voulez, virginiser à nouveau la mémoire, changez la clé. Attention, votre ESP32 repartira en mode point d’accès, puis une fois le réseau WiFi connu, il aura une adresse IP obtenue par la box internet (DHCP).

Debug en ligne

Si vous êtes branché par le port série à l’ESP32, les messages de debug sous la forme Serial.print(…) ou Serial.println() sont disponibles sur le moniteur de l’IDE Arduino à 115200 bauds.

Alimentation durant la programmation

Il arrive que l’ESP32 alimenté par l’USB de votre PC ne démarre pas correctement. Cela vient d’une tension d’alimentation insuffisante, inférieure à 5V et d’un courant important au démarrage. Dans ce cas utilisé un Hub USB disposant d’une alimentation propre à lui. Vous connectezl’ESP32 au Hub que vous connectez à votre PC. https://www.amazon.fr/Aceele-Microsoft-Nintendo-Ordinateur-Portable/dp/B07RLFKG4X/ref=sr_1_1_sspa

Bugs Soft

USB Driver

Attention, si vous n’arrivez pas à communiquer entre votre PC et l’ESP32, c’est qu’il vous manque le driver pour l’interface USB. En général, c’est le CP2102 qui se trouve sur la carte ESP32. Pour plus d’explications, allez sur la page : https://f1atb.fr/programmation-de-lesp32-application-au-routeur-photovoltaique/

Nom SSID

Après plusieurs téléchargements, modifications du code, je me suis trouvé dans la situation où l’ESP32 cherchait bien à se connecter à mon réseau WIFI de la maison comme d’habitude. Mais, le moniteur série m’affichait un échec et passage en mode point d’accès (AP) à l’adresse 192.168.4.1. En remettant le nom du réseau WIFI (SSID) c’était toujours un échec. La solution a été de nommer un nouveau nom de réseau en modifiant le SSID de la box locale, de s’y connecter sans problème, et finalement de remettre le SSID d’origine. Cela depuis la version 3.0.1 de la carte ESP32. Je n’ai pas l’explication mais au moins le remède.

RemoteDebug (non applicable à partir de la version V8.08 du routeur)

Sur certaines configurations, lors de la compilation, il y a une erreur de librairie inexistante :…..include <hwcrypto/sha.h>
Avec un éditeur de texte, ouvrez le fichier dans vos bibliothèques Arduino C:/Users/Utilisateur/Documents/Arduino/libraries/RemoteDebug/src/utility/Websockets.cpp

Le début de l’adresse peut changer suivant l’utilisateur. Retrouvez le dossier Arduino pour localiser le fichier dans les sous-dossiers.

A la ligne 42, remplacez :
#include <hwcrypto/sha.h>
par
#include <esp32/sha.h>

Ne me demandez pas pourquoi, sur mon PC de bureau, je n’ai pas besoin de faire cette modification, sur mon PC portable, j’ai besoin.

Visualisation à distance

Certaines des données peuvent être affiché à distance sur un mini écran qui s’allume au passage d’une personne. Les détails de la construction sont disponibles ici : https://f1atb.fr/affichage-a-distance-consommation-ou-surproduction-electrique/

Si vous changez de version de routeur, il faut mettre à jour le logiciel de l’affichage distant.

Vidéo sur l’installation et le paramétrage

Sécurité

En travaillant sur ce projet en 230V, vous acceptez d’assumer la responsabilité de votre propre sécurité et de prendre toutes les précautions nécessaires pour éviter les accidents électriques.

Responsabilité

Articles sur le photovoltaïque

F1ATB André

Radio Amateur - Domotique - Photovoltaïque

Vous aimerez aussi...

602 réponses

  1. Ludovic J dit :

    Bonjour André,
    Merci pour cette nouvelle version 8.09 qui nous apporte de nouvelles fonctionnalités.
    Je mets ici le lien vers ma version modifiée:
    https://drive.google.com/file/d/1IPJ-2USyf3G38K84oy90YChgmzqBr4Ip

    Fonctions ajoutées (les mêmes qu’avant): estimation énergie routée par action, complément HC pour avoir un minimum, priorité des actions, boost CACSI/TIC, sonde DHT11 interne, sécurité température, ventilateur.

    Cordialement,

    • Clement dit :

      Super merci je ne vais pas avoir besoin de rentrée t’es modification manuellement

      Top

  2. Gounet Eric dit :

    Bonjour,
    Mon problème de lenteur des versions postérieures à 8.06 est résolu !!
    Après une dizaine d’aller-retour entre les différentes versions, je me suis décidé à faire une mise à jour en « effaçant’ la ROM de l’ESP32 c’est à dire en changeant la variable « CLE_Rom_Init ». Et là tout marche impeccablement sans lenteur, sans de multiple « Connection failed to Envoy-S server! »
    André, une idée d’où le problème peut venir ?
    Cordialement
    Eric

    • F1ATB André dit :

      Je ne comprends pas la source du problème. Le principal, cela fonctionne bien aujourd’hui

      Cdlt

    • anthony dit :

      Bonjour, moi cette méthode ne fonctionne pas chez moi. André y a t’il possibilité de me faire une version light (sans graph sur la première page pour tester si c’est l’origine du problème?

      merci a vous

      • F1ATB André dit :

        Désolé, on ne peut pas faire d’autres versions sans même connaitre l’origine du problème. Chez de nombreuses personnes, cela tourne. Il faut regarder autour du WIFI, de conflits d’adresse IP, du paramétrage, du navigateur WEB qui conserve en cache une ancienne version etc…

        Cdlt

        • anthony dit :

          bonjour je comprend, c’etait pour isoler le probleme.

          niveau wifi j’ai changé de routeur.
          j’ai changé de esp (avec antenne)
          conflit d’adresse ip impossible c’est des réservations.
          navigateur web en inprivate pour les tests.

          je vais continuer a investiguer, merci encore de votre retour et bonne journée

          • Fab dit :

            J’ai un peu cherché moi aussi sur le pkoi de ces lenteurs. J’ai remarqué que le ping envers le routeur était très haut.
            En faisant le tour des périphériques, de manière générale, le ping de mes esp32 est très haut comparé aux esp8266. J’ai fait quelques trouvailles:
            – Pour les esp32, il faut désactiver le power saving du wifi qui introduit des lenteurs du wifi.
            – L’esp32 avec les bibliothèques de l’arduino supporte mal le wifi mesh, sur les TP-LINK Deco, il vaut mieux désactiver le mesh pour les périphériques ESP32

            Comme le dit André, il semble bien qu’il faille fouiller du coté du Wifi, peut être serait-il pertinent de donner les marques et modèles du fournisseur de wifi

            Personnelement:
            – TPLINK Deco XE75 Pro + Deco X50 + Deco X50 Outdoor

          • anthony dit :

            effectivement j’ai du mesh a la baraque, es ce que c’est l’axe de recherche je suis un peu dubitatif mais j’ecoute 🙂
            -Synology wrx560 avec un mr2200ac en filaire

          • anthony dit :

            voici les tests effectué ce matin:
            -remontage d’un esp32 a coté du routeur -24dbm
            -suppression de mes webcam (peut etre une saturation du wifi en 2.4)
            -suppression des requetes HA sur le enphase.
            -essai d’un autre navigateur

            si je vais sur la page d’accueil puis vers données brute puis de nouveau sur accueil, pouf il plante je le perds sur le reseau. apres il a un mal de chien a retrouver enphase.

            j’avoue ne plus avoir d’idée. Peut etre l’alim du esp….

          • Fab dit :

            Pour moi, tout est revenu à la normale depuis 2 jour. Les changements:
            – Version perso avec désactivation du power saving du wifi sur l’esp
            – Désactivation du mesh pour l’esp
            – Désactivation du beam forming
            Je laisse tourner comme ça pendant quelques jours, si ça reste comme ça, je récativerai les fonctions une par une pour regarder laquelle a un impact.

          • F1ATB André dit :

            Votre analyse m’intéresse. J’ai 4 routeurs chez moi et jamais rencontré ce problème.
            Vous pouvez si vous le souhaitez m’écrire en direct à f1atb.fr@gmail.com

            André / F1ATB

  3. S. G dit :

    Bonsoir André,

    Le routeur est une machine de guerre, ça fonctionne superbement ! Merci !

    Mais je suis passé au V8.09 récemment, le forçage est une belle nouveauté.
    Seulement j’ai trouvé un détail troublant:

    Lors de la première connexion après téléversement, le routeur trouve tous les wifi au scan et se connecte sans problème puis fonctionne.
    Mais si on le force à repasser en AP pour changer de SSID, alors il ne retrouve plus aucun réseau disponible… dans le même environnement.

    C’est alors qu’il faut retéléverser en changeant la clé rom… et hop il retrouve à nouveau tous les réseaux…

    Cette situation vous parle ? On dirait qu’il ne parvient qu’à se connecter une seule fois…

    Merci dans tous les cas pour votre routeur.
    Cordialement

    Gabriel S

  4. Olivier dit :

    Bonsoir André, mon routeur fonctionne avec la 8.07 mais je pense avoir trouvé un dysfonctionnement en rapport avec le wifi, c’est à dire que si l’esp32 n’est plus connecté au wifi alors il n’effectue plus les actions enregistrées sur ce laps de temps ni n’enregistre l’historique sur 48h.
    Je m’en suis rendu compte car je lui ai enregistré comme action de chauffer en marche forcée la nuit sur mes heures creuse uniquement si la température est inférieure à 46 degrés, et il ne l’avait pas fait alors que la température relevée était de 38 degrés. et j’avais constaté dans le même temps que mon historique sur 48h disparaissait et recommençait tous les matin à 7h30. et en fait c’est que j’avais programmé une coupure du wifi toutes les nuit de 3h à 7h30… une fois cette programmation enlevée et donc le wifi rétabli définitivement, tout fonctionne correctement.
    J’espère que cela aidera, cordialement.

    • F1ATB André dit :

      C’est le fonctionnement normal du routeur en l’absence de wifi pendant 3mn il se reset et perd les données enregistrées en mémoire RAM. Le wifi lui permet d’obtenir l’heure pour les différentes actions et de dialoguer éventuellement avec d’autres ESP.

      Cdlt

      • Olivier dit :

        entendu merci, par contre est-il possible dans l’accueil de distinguer pour l’énergie injectée dans le chauffe-eau celle provenant du surplus solaire de celle provenant du réseau en marche forcée svp?
        Cordialement.

        • F1ATB André dit :

          Vous pouvez voir sur la courbe d’ouverture du Triac en marche forcée et en régulation. Cela donne un ordre de grandeur.

          Cdlt

          • Alain dit :

            Bonjour et merci André,
            Moi aussi j’ai de gros problèmes de lenteur de déconnexion et d’erreurs de lectures sur Emphase avec les versions de routeur postérieure à la 8.06 !!
            Merci pour ton investissement
            Alain

          • F1ATB André dit :

            Essayez ceci qui améliore nettement le ping mais augmente de 70mA la consommation.
            En version 8.09 c’est à la ligne 534
            Remplacez:
            WiFi.begin(ssid.c_str(), password.c_str());
            par
            WiFi.begin(ssid.c_str(), password.c_str());
            WiFi.setSleep(false);

            Vous rajoutez cette ligne qui évite au wifi de passer en mode de veille.
            Dites moi, si cela améliore.

            Je vais le mettre en option dans la version 9.00 à venir

            Cdlt

          • anthony dit :

            Bonjour André, comme tu peux voir, j’ai un grand sourire sur mon visage, la modif de la ligne 534 change complètement le comportement. L’interface répond du tac o tac. je ne vois plus de perte de connexion avec le metered enphase. Attendons d’autre retour, mais pour moi c’est top!!
            Cordialement

          • F1ATB André dit :

            Parfait, merci pour le retour. Reste la question pourquoi chez certain, il n’y a pas de souci, chez d’autres cela traine.
            Dans la V9 ce sera une option.

            Cdlt

          • ROCHE David dit :

            Salut à tous,
            Depuis que je teste le routeur, je confirme que l’ajout de cette ligne :

            WiFi.setSleep(false);

            dans le code, permet de n’avoir plus aucunes erreurs de communication avec la passerelle Envoy-S et que les pages Web sont beaucoup plus réactives !!
            Donc bien vu et surtout merci !!

            Normalement, demain je place le routeur dans l’armoire électrique pour qu’elle fasse foncitonner mon ballon d’eau chaude sur le surplus solaire ….

            Voilà et merci à tous

            David ROCHE

          • F1ATB André dit :

            Dans la version 9 du routeur publiée ce matin. Il y a dans les paramètres une case à cocher pour choisir ou pas cette option.

            Cdlt
            André

  5. Alain D. dit :

    bonjour André,
    j’ai fait la modification pour mes deux ESP32 sur la ligne 534, effectivement l’affichage entre les menus est très réactif ainsi que le rafraîchissement de la page, pour les mesures c’est un Shelly EM

  6. Guillaume M. dit :

    Bonjour André,
    est-il prévu dans un avenir proche la prise en charge comme source de mesure des messages mqtt vers ESP32?
    Provenant par exemple de zigbee2mqtt.
    Merci pour votre travail.
    Cordialement

  7. Valade dit :

    Bonjour,
    Bravo et merci pour ce partage que je suis en train de mettre en place…
    J’ai une version 8.06 en test qui fonctionne bien. J’essaie d’installer la dernière version 8.09 pour être à jour et rajouter la mesure de température du chauffe-eau.
    Mais voilà je me heurte à ce message d’erreur :
    Compilation error: ‘WiFiClient’ does not name a type; did you mean ‘Client’?

    J’ai essayé via OTA et via liaison série sur un autre ESP32 avec le même résultat…
    Merci de toute piste !
    Cordialement,

    • F1ATB André dit :

      Vous n’avez pas changé de machine ou d’Arduino IDE? Cela ressemble au manque de la bibliothèque WiFiClientSecure.h ou de la bibliothèque de l’ESP32.

      cdlt

    • Valade dit :

      Finalement, sur un autre ordinateur, l’installation se passe sans problème.
      Je n’ai pas bien compris pourquoi, mais le problème vient donc de ma machine…
      Encore merci et bravo pour cette superbe réalisation !

  8. PierreD dit :

    Bonjour André, et merci pour ce super routeur.
    Je souhaiterai réutiliser voter code pour piloter, non pas un triac mais un onduleur qui alimente un moteur.
    Pour l’instant je contrôle la vitesse par paliers avec des relais mais je peux aussi la contrôler avec une tension (comme un VCO).
    Je pense que la modification du code pour envoyer sur un GPIO une tension 0-3,3v selon les mêmes critères que l’ouverture du triac, au lieu du signal PWM doit être assez limitée. Pouvez vous m’aider svp ?
    Merci

    • F1ATB André dit :

      Désolé, il y a un bug pour le changement de Wifi. Ce sera corrigé en V0.
      Pour l’instant, modifiez un chiffre de la constante en ligne 57
      #define CLE_Rom_Init 812567808
      Cela permettra un redémarrage comme la première fois.

      Cdlt

    • F1ATB André dit :

      Si vous pouvez piloter en 0 à 3.3V.
      Mettez en sortie d’un GPIO une résistance de 10kohm et un condensateur de 100 micro farad pour lisser une sortie en multi-sinus.
      Alternative, modifier le code pour avoir une sortie analogique.

      Cdlt

      • PierreD dit :

        Malheureusement ce n’est pas assez lissé avec la capa et la résistance. Ca oscille de qq Hz tous les 1/4 de seconde environ. J’admet qu’une dynamique de 50Hz sur 3V il faut être assez stable.
        Un indice pour où ca se passe dans le code pour passer sur une sortie analogique ? Si j’ai bien compris il faut utiliser les gpio 25 ou 26.
        Merci.
        Note : J’ai ajouté un 2eme DS18B20 sur le gpio12. Pour l’instant ça fais que remonter en MQTT, mais j’espère arriver à l’utiliser pour fixer la consigne sur le 2eme relais. Quand à l’interface HTML, ce n’est pas commenté, ca me parait quasi impossible d’afficher cette T°en page d’accueil.

        • F1ATB André dit :

          avec la variable Retard[0] pour le triac et Retard[1],Retard[2] … pour les relais vous ave une information entre 0 et 100 pour piloter une sortie en PWM , DAC ou Sigma/Delta.
          Retard=0 implique ouverture 100% du temps
          Retard=100 : pas d’ouverture

          Cdlt

  9. Alain dit :

    Bonjour André,
    J’ai corrigé la ligne 534 comme suggéré.
    Il apparaît que j’observe une certaine amélioration en terme de reboot intempestif. Je sent que le système est moins chargé. Le routeur est fonctionnel lorsque je n’appelle pas les pages durant son fonctionnement.
    Toutefois les pages restent difficiles à appeler. Il n’est pas rare de devoir les appeler à nouveau pour les voire s’afficher. cela est assez frustrant.
    L’accès aux pages semble occuper beaucoup le système et occasionne des ratés. Notamment des erreurs de connections de Emphase. Ces dernières restent encore très fréquentes.
    Cordialement
    Alain

    • F1ATB André dit :

      OK, je ne comprends toujours pas pourquoi certains ont des problèmes avec le WIFI. C’est quelque chose que je n’arrive pas à reproduire même en configuration Emphase.

      Cdlt

      • Fab dit :

        Bonjour Alain,
        Quel marque/type de routeur wifi utilisez vous ?
        Sur ces derniers jours, j’ai constaté que le beamforming avait vraiment un impact sur la réponse du routeur en plus du power management wifi.
        Pouvez vous tenter de désactiver le beamforming si cette option est disponible ?
        Cordialement,
        F.

    • Gounet Eric dit :

      Bonjour Alain,
      J’avais aussi ces problèmes de lenteur. Une installation avec mise à jour complète c’est à dire en « effaçant’ la ROM de l’ESP32 (en changeant la variable « CLE_Rom_Init ») a complètement résolu le problème.
      Cordialement

  10. Alain dit :

    Bonjour Fab,
    J’ai une box wifi Red/SFR fibre en entre web.
    Derrière j’ai un routeur Linksys WRT54GL sous DD-WRT. Ce routeur est configuré en repeater de la box et toute ma domotique sous Domoticz/RPI4 et autres protocoles y sont configuré !
    Ça me permet de ne pas être exposé directement au web et surtout d’avoir un système plus nomad sans dépendre d’une box particulière !!
    L’ensemble est plutôt très stable.
    Je regarde ce soir pour ce paramètre beamforming.
    La ce paramètre ne me dit rien.
    Avec la modif ligne 534, le routeur tourne en injection depuis ce matin sans trop de soucis.
    La courbe est plutôt propre est même améliorée par rapport aux précédentes versions.
    Le soucis reste le buggage des que l’on accède aux pages.
    Lorsque la page est activée elle est plutôt stable.
    Cordialement
    Alain

  11. Alain dit :

    Bonjour André,
    Qu’est ce qui a changé fondamentalement entre les versions 8.06 et 8.09 ? Car la 8.06 reste une référence en terme de fluidité.
    Par ailleurs, pourquoi maintenir le choix sur le mode sleep wifi de l’esp. Compte tenu du nombre de requêtes pratiquement permanente, l’esp n’a pratiquement jamais la possibilité de se mettre en veille !!??
    Cordialement
    Merci
    Alain

    • F1ATB André dit :

      C’est écrit en début de fichier. Il n’y a pas au de mofification sur le WIFI.

      Suivant la source de puissance utilisé on a beaucoup ou peu de requète sur le Wifi. Dans tous les cas, avec un mode sleep on a des pings à 100 ou 200ms. Sans mode sleep on a des ping à 1 à 10ms.

      Cdlt

      • Alain dit :

        André merci pour ta réponse,
        J’ai une nette amélioration sur l’accès aux pages après plusieurs manipulations.
        Pour info je suis relié en RJ45 entre mon routeur et l’Envoy. J’ai un signal -32db en wifi avec l’esp.
        Je n’ai pas détecté de comflit d’ip mais j’ai modifié l’IP initialement utilisée dans l’esp pour cette liaison RJ45. Dans mon routeur j’avais fait une réservation d’ip sur l’adresse mac de l’envoy. J’ai donc mis à jour cette réservation.
        Surtout j’ai changé l’ip passerelle et dns dans l’esp! qui n’étaient certainement pas adaptées ??
        A suivre.
        Par contre, sans être forcément bloquant, les erreurs de connections Envoyé restent assez nombreuses. On sent que le système reste chargé.
        Cordialement
        Alain

        • Alain_C dit :

          Bonjour Alain,
          Si j’ai bien compris, vous êtes passé par un ESP32+Ethernet (avec RJ54) ?

          Je souhaiterais faire de même… quel modèle avez vous utilisé ? Y a-t-il beaucoup de modifications logiciels à faire en partant de la solution d’André ? (je découvre ce monde) .

          Pour l’instant je suis en ESP32 avec le wifi (j’ai désactivé le mode veille pour ce dernier). D’ailleurs depuis que le mode veille est désactivé, je n’est plus de reboot depuis 20 h).

          Alain_C ( 🙂 pour me démarquer)

          • Alain dit :

            Bonjour Alain C,
            Non pas de modifications par rapport au routeurRLS d’André.
            J’ai simplement un routeur Wifi supplémentaire dans mon réseau de maison.
            Toi tu connectes le routeur d’André sur ta box wifi de ton opération internet.
            Moi je me connecte sur mon routeur wifi qui est lui même connecté en wifi sur ma box internet de mon opérateur.
            Cordialement
            Alain

  12. Valade dit :

    Bonjour,
    J’ai parcouru les commentaires pour essayer de trouver une solution, mais… je n’ai pas trouvé.
    Lorsque j’installe une version 8 sur 2 ESP différents, aucun ne voit le triac alors qu’en version 7 pas de problème….
    Ce n’est donc pas un problème de branchement du triac mais alors que cela peut-il bien être ??
    Une idée ?
    Merci (et encore bravo)

    • Alain dit :

      Bonjour Valade,
      Vérifie dans données que le triac est bien actif puis fait un reset dans paramètres avant d’activer la page action
      Cordialement
      Alain

    • F1ATB André dit :

      Le signal Zc n’arrive pas sur l’ESP32. La V8 coupe le Triac si l’ESP32 ne reçoit pas une impulsion toutes les 10ms. Revoir le câblage et que Phase et Neutre arrive bien sur le gradateur/Triac.

      Cdlt

      • Valade dit :

        Merci pour ces pistes.
        – Le câblage est revu (et bon me semble-t-il puisque ok en version 7)
        – Phase et neutre en bonne place
        Et… rien « pas de triac »
        Ce qui est encore étrange, c’est que j’en ai un en test en 8.06 qui fonctionne depuis plus d’un mois.
        Je repasse donc en version en V7 pour celui-là… pour le moment.
        Cordialement,
        Patrice

  13. Alain dit :

    Bonjour André.
    j’ai aussi ce souci d’accès dans Action !
    J’accède après un reset !!
    On dirait que le serveur sur l’esp à du mal à agir.
    J’ai fait beaucoup de manipulations. Je ne suis pas convaincu que ça vient de la liaison wifi.
    Merci encore
    Alain

  14. Nutta dit :

    Je suis passé à la version 8.09 (source UxI) il y a 3 jours et le premier jour a bien fonctionné mais par la suite la page « Actions » ne fonctionne plus non-plus chez moi (un reset fonctionne mais pas longtemps).
    https://i.servimg.com/u/f81/15/44/36/18/captur50.png

    • Alain dit :

      Bonjour Nutta.
      Oui cette situation est typique.
      Il faut faire un reset à chaque fois.

      J’ai installé un Routeur avec Shelly EM chez mon voisin hier. Le truc semble beaucoup plus réactif !!
      J’ai commandé un Shelly pour chez moi que je reçois dans 2 jours.
      A suivre.
      Cordialement
      Alain

    • F1ATB André dit :

      Quand cette page Action ne s’ouvre pas complètement, l’inspecteur du navigateur montre que le fichier Javascript ActionsJS ne s’est pas chargé. En attendant que je comprenne pourquoi, allez sur une autre page et revenez sur Action. En général, cela marche. Pas la peine de faire un reset.

      Cdlt

    • F1ATB André dit :

      En ayant découpé en 2 le fichier javascript ActionsJS à télécharger par le navigateur. Cela semble résoudre le problème. Cela fera partie de la version 9 avec de nombreuses nouveautés.

      Cdlt

  15. Nutta dit :

    Non André, pas chez moi, vraiment pas même en faisant cette manipulation de nombreuses fois.

  16. Tupolev dit :

    Bon, depuis quelques jours j’avais des reboot casiment à chaque fois que je me connectais au routeur,
    J’ai depuis ce matin sorti le routeur de l’adressage automatique de la box, pour le mettre en dehors du serveur dhcp de cette box.
    Depuis je n’est plus de reboot à chaque ouverture du routeur.
    Peu être un début de résolution du problème rencontré par certains utilisateurs ?
    Bonne soirée à vous

    • Tupolev dit :

      Bonjour, après 24 h, le problème reste entier, casiment à chaque fois que je me connecte au routeur, celui-ci reboot.
      Cela ne gêne pas le fonctionnement, mais je perds à chaque fois les tracés sur les différents compteur de la page d’accueil.
      Bonne journée

      • Alain dit :

        Bonjour,
        ça ressemble à un signal wifi faible.
        Quelle est ta valeur wifi en dB ?
        Tu a modifié la ligne 534 comme suggéré par André ??
        Cdl

  17. Alain dit :

    Bonsoir,
    J’ai reçu et installé le ShellyEM.
    Implacablement le système est de loin beaucoup plus rapide et pas d’erreurs de lectures.
    Reste à peaufiner les réglages.
    Je suis en zéro injection sur Emphase.
    Cordialement
    Alain

  18. Alain dit :

    Bonjour André,
    Avec ma configuration, certainement du à la réactivité des onduleurs Emphase notamment en zéro injection. J’ai des variations de puissance reactves de folie totalement décorrélé de la puissance active.
    La superposition des deux courbes fait que l’échelle de mesure est très importante et rend la lecture de la puissance active peu visuelle.
    Perso, la puissance reactves n’est pas pertinente chez moi.
    y a t’il pas moyen de faire un bouton menu afin d’afficher ou pas la puissance réactive ou mettre les deux courbes sur un graphique séparé ?
    Cordialement
    Alain

    • F1ATB André dit :

      Au contraire. Cela est pertinent. Quand vous avez une bonne régulation autour de 0W de puissance active, plus la puissance apparente est chahutée et importante, plus vous envoyez vers votre chauffe-eau etc.. Regardez bien les explications et la 3 eme image ici: https://f1atb.fr/fr/routeur-photovoltaique-affichage-et-parametrage/

      Cdlt

      • Alain dit :

        Ok
        C’est plus clair pour moi.
        Merci pour cette exploitation.
        J’avais en tête le côté négatif sur mon matériel, mes onduleurs.
        Cdl

      • Alain dit :

        Bonjour André,
        Merci pour ton retour.
        Je suis sous Emphase, zéro injection, mesure ShellyEM, je régule mon ballon ECS.
        J’ai réglé la réactivité à 12 et le seuil à 60w.
        J’étais en multi -sinus. J’avais des variations importantes et pas très régulières autour du 0 avec des allé et retour en tirage et en injection d’une amplitude de l’ordre de 100 à 300 w.
        Pas très jolie à mon goût.
        Je viens de repasser en découpe-sinus, plus rien à voir, ici la courbe est très propre avec très peu de fluctuations dans une plage de 0 à 90w, très peu d’aller retour en injection.
        Bien-sûr la variation se fait ressentir lors des plus ou moins fortes variations de production PV
        Je voulais partager mon expérience.
        Cdl
        Alain

  19. Alain_C dit :

    Bonjour,
    Je suis étonné de la différence de charge processeur chez moi (quand je compare aux images vues à droite à gauche):
    Charge coeur 0 (Lecture RMS) Min, Moy, Max : 1, 12, 2260 ms
    Charge coeur 1 (Calcul + Wifi) Min, Moy, Max : 0, 0, 98 ms

  20. Lecomte thomas dit :

    Bonjour André,
    est il possible de faire fonctionner le routeur uniquement sur un routeur wifi non connecté au web ? ou la liaison web est indispensable au bon fonctionnement ?
    merci André.

    • F1ATB André dit :

      Le web est nécessaire pour la gestion de l’heure.

      Cdlt

      • Lecomte thomas dit :

        mince, c’est pour mettre dans un endroit ou il n’y a pas de web (ils utilisent un smartphone, mais le réseau n’est pas partagé 24/24). je pensais mettre juste un routeur wifi (tplink ou autre).
        je vais examiner le code pour voir ce que je peux faire pour le rendre autonome en terme de réseau. Merci André pour ton travail.