OpenDTU: suivre sa production solaire Sunology / Beem Energy via MQTT sur Jeedom

Savez vous que votre station solaire Sunology ou Beem Energy émet des informations radio ? Des informations qu'il est possible d'exploiter grâce à un petit boitier OpenDTU, capable de remonter des données très complètes pour chaque panneau individuel, dans Jeedom, Home Assistant, etc. grâce au protocole MQTT ! Puissance, efficacité, production du jour, température, etc. Je vous explique tout ici !

A lire également:
Comparatif stations solaires: quelle est la meilleure solution pour économiser sur sa facture d'électricité ?

Qu'est ce que OpenDTU ?

Les micro onduleurs Hoymiles sont des appareils qui diffusent leurs informations de production par fréquence radio, en 2,4Ghz. Le fabricant propose d'ailleurs une passerelle DTU capable de lire ces informations et qui, reliée à internet, les envoie sur le Cloud afin de les mettre à disposition de l'utilisateur.

module de telesurveillance dtu pro hoymiles

Si ce système est très pratique, il a deux inconvénients: le cout et la dépendance vis à vis du Cloud.

Après un reverse engineering complet pour décrypter ces informations, un groupe de développeurs a donc mis au point le logiciel OpenDTU, capable de capter et interpréter ces informations grâce à un boitier reposant sur une carte programmable ESP32 et une carte NRF24L01+ pour la partie radio.

wiring esp32 symbol

Pour les bricoleurs, tout est expliqué sur la page du projet OpenDTU. Si vous êtes amateur d'Arduino, ESP32, etc. le montage ne devrait pas vous poser beaucoup de problème, et la page du projet propose même des modèles de boitiers à imprimer en 3D pour accueillir toute l'électronique.

Pour les autres, et bien certaines personnes proposent de temps en temps des montages prêts à l'emploi, comme ce modèle que j'ai commandé à Mathieu ici (n'hésitez d'ailleurs pas à rejoindre son discord pour plus d'informations dessus).

opendtu mqtt jeedom 1

Ce petit boitier comprend ici tout le nécessaire, proprement logé dans un boitier imprimé en 3D.

opendtu mqtt jeedom 2

Nous avons même accès aux deux boutons de contrôle de l'ESP32 pour le reboot, ainsi que la visualisation de la led d'état qui permet de vérifier la bonne réception des informations.

opendtu mqtt jeedom 3

L'ensemble est alimenté par une alimentation micro Usb, livrée.

opendtu mqtt jeedom 4

Pour la communication, le système reprend simplement la connexion Wifi gérée par l'ESP32.

opendtu mqtt jeedom 5

Pour ceux qui ne veulent pas s'embêter ou qui ne maitrisent pas bien ce domaine, c'est la solution de facilité, qui fonctionne parfaitement !

Ce boitier embarque d'office le logiciel OpenDTU, qui permet de lire de nombreuses choses:

Pour chaque micro-onduleur:

  • Marque, modèle et numéro de série
  • L’énergie produite depuis l’installation
  • L’énergie produite sur la journée
  • La puissance actuellement produite
  • L’intensité et la tension de sortie
  • L’efficacité de la transformation du courant continu en courant alternatif

Pour chaque panneau:

  • La puissance DC (courant continu) produite par les panneaux
  • L’intensité et la tension
  • L’irradiation

La lecture de ces informations permet de parfaitement monitorer ses panneaux solaires, pour surveiller les zones d’ombres imprévues, voir l’impact de l’inclinaison et l'orientation d’un panneau immédiatement, comparer différents positionnement des panneaux entre eux, suivre sa production réelle, journalière et cumulative (W et kWh) par onduleur, aider à déterminer les pertes de production dues au câble, etc.

Mais ce logiciel a également une fonctionnalité particulièrement intéressante: la possibilité d'envoyer les informations à un système domotique via MQTT. Si Home Assistant est clairement annoncé dans la description de OpenDTU, cela est tout à fait possible aussi avec Jeedom !

A lire également:
Sunology PLAY: la station solaire qui réduit votre facture d'électricité en 2 minutes !

Configuration des onduleurs Beem et Sunology sur OpenDTU

OpenDTU est régulièrement mis à jour pour lui ajouter des fonctionnalités ou des modèles supportés. Aujourd'hui il est compatible avec les onduleurs Hoymiles HM-300HM-350HM-400, HM-600, HM-700, HM-800, HM-1000, HM-1200, HM-1500, Solenso SOL-H400. La bonne nouvelle, c'est que les HM-300, 350, 400, sont utilisés par les stations Beem Energy et Sunology ! Attention toutefois:

  • Beem Energy: sur ma première station Beem, datant d'il y a presque deux ans, l'onduleur était de marque AEConversion, donc non compatible. En revanche l'extension Beem que j'ai installée l'année dernière utilise un HM-300, parfaitement supporté par OpenDTU
  • Sunology: le constructeur utilise aussi bien des modèles HM-350, HM-400 mais aussi Solenso H400. Pas de problème, tous ces modèles sont parfaitement supportés par OpenDTU !

Il faudra simplement récupérer les numéros de série de chaque micro onduleur, visible sur une petite étiquette sur l'onduleur lui même. Concernant les onduleurs Hoymiles installés sur les stations Sunology, il faudra s'équiper d'une clé plate pour dévisser l'onduleur du cadre, le numéro de série étant côté panneau, donc non visible sans démonter. Une petite manipulation qui se fait en 5min.

Pour commencer la configuration, il faudra bien sûr brancher l'OpenDTU sur une prise électrique, pas trop éloignée des onduleurs, afin qu'il puisse capter leurs informations. Bon le modèle que j'ai est plutôt performant, puisqu'il capte les onduleurs à une quinzaine de mètres, avec un mur parpaing extérieur et deux murs en placo à traverser.

Il faut ensuite se connecter au réseau Wifi (point à point) qu'il a créé, qui portera le nom OpenDTU-xxxx. Le mot de passe dans mon cas est openDTU42, à ajuster selon le modèle que vous avez acheté / fabriqué. On arrive sur cette page d'accueil:

opendtu mqtt jeedom 6

On s'identifie dans OpenDTU avec le couple admin / openDTU42. Pour commencer il faut synchroniser l'heure du système, en allant dans Paramètres / NTP, et en cliquant sur le bouton rouge “Synchroniser l'heure” (en ajustant son fuseau horaire si besoin).

opendtu mqtt jeedom 11

On peut maintenant ajouter ses onduleurs en se rendant dans Paramètres / Paramètres des onduleurs. Il suffit de renseigner le numéro de série relevé sur chaque micro onduleur, et de lui associer un nom pour le reconnaitre:

opendtu mqtt jeedom 7

On valide et notre micro onduleur est ajouté:

opendtu mqtt jeedom 8

On peut ainsi ajouter tous les micro onduleurs qui équipent nos stations solaires: oui, un seul OpenDTU suffit même si on possède plusieurs stations solaires ! Il suffit qu'elles soient à portée de l'antenne radio. Ici j'ai donc renseigné mes 3 panneaux Sunology, mais également mes deux Beem Energy. Comme on le voit malheureusement mon premier kit Beem n'est pas reconnu (marque AEConversion). Mais c'est ok pour l'extension, plus récente:

opendtu mqtt jeedom 13

On commence alors à recevoir instantanément les informations de chaque onduleur, visibles sur la page d'accueil:

opendtu mqtt jeedom 16

Comme on le voit les informations sont très complètes !

Une fois que le fonctionnement est validé, on peut modifier le réseau Wifi pour que l'OpenDTU se connecte à notre réseau local, et soit ainsi accessible par d'autres machines ou utilisateurs. On renseigne donc le nom de notre réseau Wifi et sa clé. L'OpenDTU va redémarrer et se connecter à notre réseau:

opendtu mqtt jeedom 12

Il nous faut maintenant installer MQTT sur Jeedom…

A lire également:
Test de Beem Energy: le kit solaire à installer soi même, pour faire des économies d'électricité !

Installation de MQTT sur Jeedom

Jeedom dispose maintenant d'un plugin officiel MQTT Manager:

opendtu mqtt jeedom 17

Sur la nouvelle box Jeedom Luna il est installé nativement, car il est utilisé notamment pour le plugin Zwave. Sur une autre box il faudra l'installer via la gestion des plugins. Si on ne dispose pas déjà d'un broker MQTT, on peut en installer un directement sur Jeedom. Il suffit d'opter pour le mode “Broker Local” et d'installer Mosquito via le bouton juste en dessous. On renseigne ensuite un nom d'utilisateur et un mot de passe à utiliser pour se connecter au broker:

opendtu mqtt jeedom 18

Le “broker” est le service qui va “écouter” toutes les informations qui lui sont adressées. On pourra ensuite traiter ces informations comme on le souhaite.

On retourne maintenant sur OpenDTU pour finir la configuration MQTT.

Activation de MQTT sur OpenDTU

Maintenant que notre broker MQTT “écoute” sur Jeedom, il ne reste plus qu'à lui envoyer des informations. Pour cela, sur OpenDTU, dans Paramètres, MQTT, on active le service. Dans les paramètres qui apparaissent en dessous, on renseigne l'adresse IP de notre box Jeedom accueillant MQTT, puis le nom d'utilisateur et le mot de passe définis lors de la configuration de MQTT Manager sur Jeedom:

opendtu mqtt jeedom 14

Maintenant, dans le menu Informations / MQTT, on doit pouvoir voir tout en bas de la page “Etat de la connexion” à “Connecté” en vert. Tout est donc ok ! Si ce n'est pas le cas vérifiez vos paramètres MQTT renseignés: IP, port, login.

opendtu mqtt jeedom 15

C'est fini pour la configuration OpenDTU. Vous pouvez loger ce petit boitier où vous souhaitez, tant qu'il a une prise électrique et qu'il est à portée radio des stations solaires. Il ne sera plus nécessaire d'y accéder.

Ajout des onduleurs Sunology et Beem sur Jeedom

Il ne nous reste plus qu'à ajouter les informations qu'on souhaite afficher dans Jeedom sur nos micro onduleurs. C'est la partie un peu fastidieuse, mais ca se fait très rapidement. Via le menu Plugins / Programmation / MQTT Manager, on demande à ajouter un nouveau périphérique:

opendtu mqtt jeedom 19

Dans “Topic racine”, on renseigne bien “solar” (ou ce que vous avez renseigné sur OpenDTU si jamais vous l'avez modifié). Sans “/” ni rien d'autre.

Ensuite, dans la partie “Commandes”, on va créer toutes les commandes pour chaque information à afficher. Toutes les informations sont détaillées ici, via la liste des topics MQTT.

J'ai par exemple créé ces commandes, de type “Info”. Il suffit de copier coller le type de topic qu'on veut récupérer, en prenant soin de remplacer [serial] par le numéro de série de l'onduleur pour lequel on souhaite afficher l'information:

opendtu mqtt jeedom 20

Si vous avez plusieurs micro onduleurs à suivre, je vous conseille de créer toutes les commandes pour le premier, telles que vous souhaitez les afficher, en prenant le temps de configurer le type d'information, l'affichage, etc. Ensuite il suffira de cliquer sur “Dupliquer” et simplement remplacer le numéro de série du micro onduleur sur chaque commande. Ca ira déjà beaucoup plus vite que de devoir faire toute la configuration de A à Z pour chaque micro onduleur ;-)

Ayant plusieurs stations solaires, j'ai également créé un Virtuel avec deux commandes, qui font simplement la somme de la puissance et de la production journalière de toutes les stations solaires. Ca me permettra de voir en un coup d'oeil ma production total de la journée:

opendtu mqtt jeedom 21

Au final, j'ai ce tableau de bord qui me permet de suivre toutes les informations des différents micro onduleurs, avec même le graphique de production journalière en fond de chaque tuile:

opendtu mqtt jeedom 10

Ce n'est bien sûr qu'une idée de présentation, sur Jeedom chacun est libre de configurer l'affichage comme il le souhaite :)

Conclusion

J'ai découvert OpenDTU un peu par hasard sur les réseaux sociaux, et je dois dire que c'est une excellente découverte ! Nous avions déjà vu comment suivre notre production solaire à l'aide de prises ZigBee sur Jeedom, mais cela nécessitait d'investir dans une prise connectée par station solaire, et on ne récupérait au final que la production. Avec OpenDTU, on va beaucoup plus loin, avec les performances de chaque panneau, alors qu'avec une prise connectée, nous n'avions qu'un seul relevé si on possédait par exemple une station solaire + 2 extensions. Mais outre la puissance et la production, nous avons également de nombreux autres éléments de suivis, comme la température de l'onduleur, son efficacité, son taux de radiation, etc. Tout cela directement issu des micro onduleurs. On ne pourra pas faire plus fiable ! Gros avantage aussi: la possibilité de réaliser soi même ce boitier OpenDTU, à peu de frais, qui permettra ensuite de monitorer tous les panneaux solaires compatibles, quelque soit leur nombre. C'est donc une solution complète et très économique !

Si vous n'êtes pas encore équipés d'une station solaire, je vous rappelle ces promotions grâce à nos codes exclusifs:

Station Sunology

711,55€ 749€
SUNPLAY_MAISON&DOM
Pour information, cet article peut contenir des liens affiliés, sans aucun impact sur ce que vous gagnez vous même ou le prix que vous pouvez payer pour le produit. Passer par ce lien vous permet de me remercier pour le travail effectué sur le blog chaque jour, et d'aider à couvrir les dépenses du site (hébergement, frais de port pour les concours, etc.). Ca ne vous coute rien, mais ca m'aide beaucoup ! Merci donc à ceux qui joueront le jeu !

Inscrivez vous à notre newsletter !

Ne ratez plus aucun article, test de produit ou guide, grâce à un mail dans votre boite chaque vendredi !

24 Commentaires
  1. Merci Cédric pour cet article qui tombe à point.
    Panneau Sunology reçu il y 15 jours

  2. Pour le moment oui.
    Très facile d’installation, beau soleil dans le sud-ouest. Je réfléchi déjà a en acheter un second.

  3. bonjour
    Les onduleurs Sunology
    Ayant comme inscription DM405M10 solar energie
    Sont-ils compatibles ?
    Sur mes 6 panneaux je ne suis pas sûr que ce soit tous les mêmes, peut-être des DM 400M10
    il fraudait que je regarde

    Je vois remonter de l’information tous les 5 minutes ? Je trouve cela assez long

  4. Désolé, j’ai confondu avec les réf des panneaux ,pour les réf des micro onduleurs ils doivent être derrière les micros onduleur après démontage ?

    • Bonjour. Oui en effet, en voyant les réf que vous avez indiquées, il me semblait bien que c’était celles des panneaux. La marque et le numéro de série des onduleurs sont sur les petits boitiers noirs à l’arrière du panneau. Pour les onduleurs Solenso, pas besoin de démonter, on directement voit la marque, la réf et le numéro de série. Pour les HM en revanche il faut en effet démonter, toutes les info se trouvant face au panneau. Il faut une clé allen et. une clé plate pour y arriver, ce n’est pas super pratique, mais ca se fait quand même.

      • Pour info, il n’est pas nécessaire de démonter les micro-onduleurs de sur les sinology.
        Le micro onduleur et décalé du panneau et une simple photo permet de voir l’étiquette avec le Numéro de série.

  5. Merci pour les infos
    l’information (rafraîchissement de l’info) est bien remonté toutes les 5 minute ?

    • Les infos sont refraichies toutes les 5 secondes, c’est le délai par défaut quand on configure MQTT sur OpenDTU. Après on peut l’ajuster selon les besoins.
      Comme Jeedom est ici le brocker MQTT, il les recoit également toutes les 5s.

  6. bonjour

    Impeccable, merci pour cet article et la procédure jeedom ! Est ce que ça vous dérangerait de partager un template de graphique ? Ca n’est pas évident quand on démarre avec Jeedom :)
    merci

  7. Bonjour Cedric

    dans la totalité de mon installation, j’aurai bientôt 6 onduleurs homyles HM350
    1 onduleur homyles HM400
    +5 onduleurs double sortie homyles Hm 700
    le boitier pourra bien gérer tous les onduleurs sous jeedom
    si c le cas, je le commande le boitier
    en passant merci pour le tuto

  8. Ha mince, je viens de lire que le boitier ne supporte que 10 onduleurs :(
    je passerai par un module sonoff ou tuya pour avoir la production globale

  9. Bonjour

    Comment faire pour mettre le firmware de l’openDTU à jour?

  10. super tuto merci bien

  11. bonjour,
    es ce que opendtu prend en charge les Micro Onduleurs 880W – MPPT Duo – DS3 – APSystems?

  12. Bonjour,
    J’ai découvert ce blog, et propriétaire depuis le mois de mai de deux panneaux Sunology et d’une domotique à base de Jeedom depuis bien plus longtemps, je me suis lancé dans la réalisation d’un boitier OpenDTU ‘fait maison’ en suivant les étapes parfaitement bien décrites ici.
    J’ai compilé les sources et quelque peu adapté la configuration des ports en fonction du matériel que j’avais sous la main (un ESP32 Heltec avec écran intégré OLED 1309), et ca fonctionne très bien. Du coup j’ai imprimé également un boitier compact spécialement conçu pour accueillir l’ESP+son écran+le module radio NRF24L01+.
    J’ai une petite question résiduelle néanmoins. En effet, dans la configuration des paramètres NTP du serveur openDTU, le fuseau horaire est réglé par défaut sur Europe/Berlin (on voit bien qui est à l’origine de ce projet !). Aucune incidence à priori puisque Paris est sur le même fuseau que Berlin, mais j’ai beau tenter de le passer sur Europe/paris, rien à faire, ca reste toujours sur Europe/Berlin.
    J’ai réussi à lui faire afficher le bon fuseau en modifiant directement à la main le fichier de configuration config.json (modif uniquement en remplacant Europe/Berlin par Europe/Paris, le code de la variable TZ restant le même) puis en le réinjectant, mais c’est un comportement assez étrange.
    Est-ce que c’est un comportement déjà observé ?
    Merci et encore bravo pour ce tuto !

  13. Bonjour,
    j’ai acheté 2 panneaux sunology et découvert ce blog sur OpenDTU. Du coup j’ai acheté un boitier avec écran à monter moi-même. j’ai bien rajouté dans l’interface les 2 onduleurs avec leur N° de série mais je ne vois pas les consommations produites. Je peux contrôler avec la prise connectée fournie que les panneaux fonctionnent correctement. D’où peux provenir le problème ? j’ai besoin de votre expertise :)

  14. Bonjour Cédric,

    En début d’année j’ai fait deux montages pour l’indication de la production de panneaux PV.
    Un Open DTU et une AHOY-DTU, je n’ai pas eu de soucis avec ça.

    J’ai le copain de ma petite fille qui vient de monter des panneaux PV avec des micros ondule Hoymiles HM800, je lui ai fait et monté un routeur MaxPV (gracieusement, composants compris)

    Comme j’ai fait deux indicateurs de production des panneaux PV, je décide de lui donner l’OpenDTU, sauf qu’au lieu de penser de ne changer que de BOX internet et les n° des micros onduleur, je décide de recharger le programme via flash_download_tool_3.9.3.exe, la ennuis ont commencées, après avoir chargé le programme je ne voyais pas le module dans la fenêtre des réseaux WiFi, après recherche sur le net je découvre ici qu’un fichier *.bin a changé, en autres, “opendtu-generic.bin” que j’ai remplacé par “opendtu-generic.factory.bin”

    Maintenant je vois mon module OpenDTU dans la fenêtre des réseaux WiFi, se que je trouve étrange, c’est que lors de premiére connexion WiFi au module ça ne me demande pas le mot de passe de connexion (openDTU42) bref, j’ai tout de même la page Web OpenDTU, je me connecte via admin/openDTU42, la je renseigne l’heure, ma freebox/+ mot de passe etc…. je sauvegarde, je fais “Déconnecter” (en haut à gauche) à partir de la je devrais pouvoir me connecter avec une adresse IP, qui devrait apparaitre dans l’app que j’ai sur mon smartphone, il n’en est rien.

    Voilà, je dois oublier un détail, j’avais fait un tuto la dessus, mais les choses ont changées, du coup tuto à refaire.

    Je vais tout refaire sur un autre PC portable.

    Avec mes remerciements.

    Jean

  15. Bonjour cédric, pouvez vous me dire si ce boitier est compatible avec les M.o Apsystems Ds3
    qui utilisent le communiquant Zigbee.
    Bien à vous.
    @lain.

    • Bonjour. Malheureusement non, désolé. Par contre selon les solutions utilisées, les Mo Apsystem sont compatibles nativement via un plugin. C’est le cas par exemple sur Jeedom, qui a juste besoin du plugin pour communiquer avec les MO, sans interface supplémentaire.

  16. Bonjour, y’a t’il un moyen de récupérer les numéros de série des micros onduleurs sans avoir à démonter sont installation ? Apparemment possible avec la passerelle pro de chez homyles mais pas vraiment envie d’investir autant.
    Merci

  17. Bonjour,
    Merci pour le tuto, tout fonctionne parfaitement, les informations remontent bien dans Jeedom. J’aime beaucoup la manière dont vous affichez les données dans Jeedom, est-il possible d’avoir l’ensemble des commandes que vous avez créées et comment avez-vous fait pour afficher les courbes de production en fond ?
    Merci encore.

Laisser un commentaire

Maison et Domotique
Logo
Register New Account
Enregistrez vous, et stockez vos articles préférés sur votre compte pour les retrouver n'importe où, n'importe quand !
Compare items
  • Casques Audio (0)
  • Sondes de Piscine Connectées (0)
  • Smartphones (0)
Compare