Intégration domotique Sigenergy, gratuite et open source

SigenStor de Sigenergy en Modbus TCP local : solaire, maison, réseau, batterie, suivi d’énergie.
Lit une installation Sigenergy — SigenStor, Sigen Hybrid, leurs batteries — sur le réseau local, en Modbus TCP, avec les registres que Sigenergy publie dans son « Sigenergy Modbus Protocol » (V2.9). Pas de cloud, pas de compte, aucun registre à déclarer : solaire, maison, réseau et batterie apparaissent dans Gladys comme des appareils, avec les index cumulés du suivi d’énergie.
Développée sans le matériel : vos retours sont les bienvenus. L’intégration suit le document officiel du protocole et elle est testée contre une installation Sigenergy simulée à partir de ce document, pas contre une vraie. Signalez ce qui marche et ce qui ne marche pas dans les issues, avec le résultat du bouton Tester la connexion.
Cette intégration n’est pas affiliée à Sigenergy Technology Co., Ltd. Sigenergy, SigenStor et mySigen sont des marques de leurs propriétaires.
Ce qu’elle fait
- Un appareil pour l’installation (le « plant » du protocole) : production solaire, consommation de la maison, échange avec le réseau (import et export), niveau de batterie, puissance de charge et de décharge, énergie disponible, santé de la batterie, index cumulés (production solaire, consommation de la maison, import et export réseau, énergie chargée et déchargée), mode de fonctionnement, état, fonctionnement hors réseau et alarmes.
- Un appareil par onduleur : sa puissance, sa production solaire, sa batterie, les tensions et courants des phases, la tension et le courant de chaque chaîne PV, ses températures, son état et ses alarmes.
- Pilotage de la batterie, désactivé par défaut : mode de la batterie (automatique, charge ou décharge forcée, veille) et limites de puissance de charge et de décharge.
- Un widget de tableau de bord : solaire, maison, réseau et batterie d’un coup d’œil.
- Des déclencheurs de scène (nouvelle alarme, l’installation ne répond plus ou répond de nouveau) et des actions de scène (régler le mode de la batterie, régler les limites).
Prérequis
- Gladys Assistant 5.1 ou plus récent (5.2 pour le suivi d’énergie).
- Une installation Sigenergy sur le même réseau que Gladys, avec une adresse IP fixe (une réservation DHCP dans votre box).
- Modbus TCP activé sur l’installation (voir ci-dessous). L’intégration parle Modbus TCP sur le port 502 ; le Modbus sur RS-485 n’est pas pris en charge.
Activer Modbus TCP
Modbus TCP est désactivé sur une installation neuve. Dans l’appli mySigen, ouvrez votre installation, puis ses réglages, et cherchez l’option serveur Modbus TCP (dans les réglages de communication) ; activez-la et enregistrez. Sur beaucoup de comptes, ce menu n’est visible que de l’installateur : demandez-lui de l’activer. Le nom des menus dépend de la version de l’appli.
Trouver les identifiants
Chaque appareil d’une installation Sigenergy a une adresse Modbus, son identifiant (unit id), réglée dans l’appli mySigen :
- l’installation (le système entier) répond toujours à 247 ;
- chaque onduleur a le sien, de 1 à 246 : 1 sur la plupart des installations à un onduleur. Une borne AC prend souvent le 1, et l’onduleur a alors un autre identifiant (2, par exemple).
Pas sûr ? Saisissez l’adresse de l’installation, enregistrez et appuyez sur Tester la connexion : si aucun onduleur configuré ne répond, il les cherche aux identifiants 1 à 16.
Configuration
| Champ | Description |
|---|---|
| Langue | Langue des noms de fonctionnalités (français par défaut). Gladys garde les noms donnés à l’ajout d’un appareil. |
| Adresse de l’installation | Adresse IP ou nom d’hôte du SigenStor, ou de l’onduleur qui porte le serveur Modbus TCP. |
| Port Modbus TCP | 502, sauf si votre installateur l’a changé. |
| Identifiants des onduleurs | L’identifiant de chaque onduleur, séparés par des virgules (1 par défaut, 8 au plus). |
| Identifiant de l’installation | 247 dans le protocole : n’y touchez pas. |
| Intervalle de rafraîchissement | De 10 s à 5 min (15 s par défaut). Seules les valeurs qui changent sont envoyées. |
| Autoriser le pilotage | Désactivé par défaut. Voir Pilotage de la batterie. |
Enregistrez, puis ajoutez les appareils depuis l’onglet Découverte de l’intégration.
Appareils
L’installation
| Fonctionnalité | Unité | Remarques |
|---|---|---|
| Production solaire | W | Jamais négative. |
| Consommation maison | W | Le registre « puissance totale des charges », ou calculée sur les anciens micrologiciels. |
| Échange réseau | W | Positif en import, négatif en export. |
| Import réseau, Export réseau | W | Le même échange, en deux valeurs positives. |
| Niveau de batterie | % | Installations avec batterie seulement. |
| Puissance de charge, de décharge batterie | W | |
| Énergie disponible batterie | kWh | Ce que la batterie peut encore fournir. |
| Santé batterie | % | État de santé, quand le micrologiciel le donne. |
| Production solaire (total) | kWh | Index cumulé. |
| Consommation maison (total) | kWh | Index cumulé, utilisé par le suivi d’énergie. |
| Import réseau (total), Export réseau (total) | kWh | Index cumulés. |
| Énergie chargée (total), déchargée (total) | kWh | Index cumulés. |
| Mode de fonctionnement | texte | Autoconsommation maximale, mode IA, plages horaires, injection totale, pilotage à distance, personnalisé. |
| État de l’installation | texte | En veille, en marche, défaut, arrêté, anomalie environnementale. |
| Hors réseau (secours) | 0/1 | 1 quand l’installation fonctionne hors réseau. |
| Alarme, Alarmes actives | 0/1, texte | Chaque bit d’alarme du protocole, traduit (« Batterie : surchauffe »). |
Une fonctionnalité dont le micrologiciel n’implémente pas le registre est omise.
Chaque onduleur
Puissance de l’onduleur, production solaire, niveau de batterie, puissance de charge et de décharge et température de la batterie (avec une batterie), température de l’onduleur, tension et courant réseau (L1, L2, L3 sur un onduleur triphasé), tension et courant de chaque chaîne PV, état de l’onduleur et ses alarmes. L’appareil porte le nom du modèle que donne l’onduleur (« SigenStor EC 6.0 SP »).
Suivi d’énergie
Avec Gladys 5.2, l’index Consommation maison (total) alimente le suivi d’énergie : Gladys en déduit la consommation de chaque demi-heure, et son coût quand un contrat est défini. Les autres index (réseau, batterie, solaire) sont publiés dans leurs propres catégories et ne sont pas comptés comme des consommateurs. Le coût calculé sur la consommation de la maison inclut l’énergie solaire que vous consommez vous-même : si votre compteur électrique est déjà dans Gladys, gardez-le comme compteur principal.
Pilotage de la batterie
Désactivé par défaut : l’intégration ne fait que lire. Une fois Autoriser le pilotage de la batterie activé, l’appareil de l’installation reçoit trois listes (cliquez sur Mettre à jour dans l’onglet Découverte) :
- Pilotage batterie : Automatique (mode de l’appli) rend la main au mode choisi dans l’appli mySigen ; Autoconsommation maximale, Charge forcée (réseau d’abord), Charge forcée (solaire d’abord), Décharge forcée (solaire d’abord), Décharge forcée (batterie d’abord) et Veille (batterie au repos) forcent l’EMS distant de l’installation.
- Limite de puissance de charge et Limite de puissance de décharge : de 0 à 100 % de la puissance nominale, par pas de 10 %. Une limite réglée ailleurs s’affiche au pas le plus proche.
Seuls les registres que le protocole documente en écriture sont écrits : activation de l’EMS distant (40029), mode de l’EMS distant (40031), limite maximale de charge (40032) et de décharge (40034). Jamais la marche/arrêt, le code réseau ni les registres de consigne de puissance. Un mode forcé reste actif jusqu’au retour en automatique, même si Gladys s’arrête : utilisez-le en connaissance de cause. Ces fonctionnalités ne sont pas des interrupteurs : les assistants vocaux ne peuvent pas les piloter.
Actions
Tester la connexion lit une fois l’installation et les onduleurs configurés et indique ce qui répond : mode, état, puissances solaire et réseau, niveau de batterie, modèle, numéro de série (les quatre derniers caractères) et micrologiciel de chaque onduleur, et si les registres de pilotage sont lisibles. Si aucun onduleur configuré ne répond, il cherche les onduleurs aux identifiants 1 à 16.
Widget du tableau de bord
Énergie Sigenergy montre quatre tuiles en direct (solaire, maison, réseau, niveau de batterie) et une liste d’état : le sens de la batterie et sa puissance, le mode de fonctionnement, les alarmes, et la liaison quand l’installation ne répond pas. Avec le pilotage autorisé, trois boutons (avec confirmation) passent la batterie en automatique, en charge forcée depuis le réseau ou en décharge forcée ; le mode courant porte une coche.
Déclencheurs de scène
- Une alarme Sigenergy se déclenche : une nouvelle alarme apparaît. Variables : le nom de l’appareil, la ou les nouvelles alarmes et toutes les alarmes actives, en texte — prêtes pour une notification. Une alarme déjà active au démarrage de l’intégration ne le déclenche pas.
- L’installation Sigenergy ne répond plus : deux lectures de suite ont échoué. Variable : l’erreur.
- L’installation Sigenergy répond de nouveau.
Le niveau de batterie, les puissances et l’état hors réseau sont des fonctionnalités d’appareil : utilisez pour eux le déclencheur habituel « valeur d’un appareil ».
Actions de scène
- Régler le mode de la batterie Sigenergy : un des modes ci-dessus. Sortie : le mode appliqué.
- Régler les limites de la batterie Sigenergy : limite de charge et/ou de décharge en watts, de 0 à la puissance nominale ; un champ vide reste inchangé.
Les deux demandent que le pilotage soit autorisé dans la configuration, et échouent sinon.
Exemples de scènes
- Charge en heures creuses : à 22 h, Régler le mode de la batterie Sigenergy sur Charge forcée (réseau d’abord) avec Régler les limites de la batterie Sigenergy à 3000 W ; à 6 h, retour en Automatique (mode de l’appli).
- Profiter du surplus : quand Échange réseau passe sous −2000 W, lancer le chauffe-eau ; l’arrêter quand il repasse au-dessus de 0.
- Coupure de courant : quand Hors réseau (secours) passe à 1, envoyer un message et couper les gros consommateurs.
- Alarme : sur Une alarme Sigenergy se déclenche, envoyer le texte de l’alarme ({{triggerEvent.data.alarm}}) sur votre téléphone.
Rafraîchissement et règles du protocole
L’intégration lit l’installation elle-même, à l’intervalle choisi, quel que soit le sondage du cœur de Gladys. Un cycle envoie une quinzaine de requêtes, une à la fois (le protocole demande d’attendre chaque réponse, 1 s au plus, avant la suivante), et ne lit jamais une plage que le protocole marque réservée. Gladys accepte 300 états par minute : seules les valeurs qui changent sont envoyées, et chaque valeur est renvoyée au moins toutes les 6 heures. Un index cumulé n’est jamais envoyé plus bas qu’avant (une erreur de lecture compterait tout l’index comme consommé en 30 minutes).
Dépannage
- « ne répond pas » : vérifiez l’adresse, que Modbus TCP est activé et enregistré dans l’appli mySigen, et que rien ne bloque le port 502. Certains micrologiciels n’acceptent qu’un client Modbus TCP : arrêtez les autres (Home Assistant, un gestionnaire d’énergie).
- « Aucun onduleur ne répond à l’identifiant » : l’installation répond mais les identifiants des onduleurs sont faux. Appuyez sur Tester la connexion pour les trouver.
- Une fonctionnalité manque : votre micrologiciel n’implémente pas son registre. Mettez-le à jour, puis appuyez sur Scanner dans l’onglet Découverte et Mettez à jour l’appareil.
- Plus de détails : réglez
LOG_LEVEL=debugsur l’intégration pour voir chaque lecture.
Limites
- Développée sans le matériel : les valeurs suivent le document du protocole, pas une vraie installation.
- Une installation Sigenergy par intégration, jusqu’à 8 onduleurs.
- Les bornes AC et DC, les charges pilotées, les appareils PSS et PID du protocole ne sont pas encore lus.
- Modbus TCP seulement (port 502, l’installation en serveur) ; pas de RS-485, pas le mode « client TCP » des installations en 4G.
- Les commandes de la batterie se limitent au mode et aux deux limites ; ni programmation horaire, ni consigne de puissance.
Paramètres de configuration
Voici les paramètres demandés par Sigenergy dans son écran de configuration dans Gladys.
| Paramètre | Type | Obligatoire | Description |
|---|---|---|---|
| Pour commencer | section | Non | L’intégration lit votre installation Sigenergy sur le réseau local, en Modbus TCP (port 502). Modbus TCP doit d’abord être activé : dans l’appli mySigen (ou par votre installateur), activez le serveur Modbus TCP de l’installation, notez son adresse IP et l’adresse Modbus (identifiant) de chaque onduleur. Enregistrez, puis ajoutez les appareils depuis l’onglet Découverte. |
| Langue des noms de fonctionnalités | select | Non | Gladys garde les noms donnés à l’ajout d’un appareil. |
| Adresse de l’installation | string | Oui | Adresse IP ou nom d’hôte du SigenStor (ou de l’onduleur qui porte le serveur Modbus TCP). Donnez-lui une IP fixe dans votre box. |
| Port Modbus TCP | number | Non | 502, sauf si votre installateur l’a changé. |
| Identifiants des onduleurs | string | Non | L’adresse Modbus de chaque onduleur, telle que réglée dans l’appli mySigen, séparées par des virgules (1 par défaut ; une borne AC prend souvent le 1, l’onduleur a alors le 2). 8 au plus. |
| Identifiant de l’installation | number | Non | 247 dans le protocole Sigenergy : ne le changez que si on vous le demande. |
| Intervalle de rafraîchissement | select | Non | Fréquence de lecture de l’installation. Seules les valeurs qui changent sont envoyées à Gladys. |
| Pilotage de la batterie | section | Non | Désactivé par défaut : l’intégration ne fait alors que lire. Une fois autorisé, Gladys peut changer le mode de la batterie (automatique, charge ou décharge forcée) et régler ses limites de puissance de charge et de décharge, depuis les appareils, le widget et les scènes. Ces commandes priment sur le mode choisi dans l’appli mySigen jusqu’au retour en automatique : utilisez-les en connaissance de cause. |
| Autoriser le pilotage de la batterie | boolean | Non | Ajoute les fonctionnalités de pilotage à l’appareil de l’installation (cliquez sur Mettre à jour dans l’onglet Découverte). |
Comment installer Sigenergy dans Gladys
- Dans Gladys, ouvrez Intégrations : Sigenergy apparaît dans le catalogue, aux côtés des intégrations natives, avec un badge communautaire.
- Cliquez sur Installer. Gladys télécharge l'image Docker (
ghcr.io/guim31/gladys-sigenergy:1.0.1), la démarre dans un bac à sable isolé du cœur, et génère l'interface de l'intégration (appareils, découverte et configuration). - Ouvrez l'écran Configuration de l'intégration, remplissez les paramètres, puis enregistrez.
- Vous pouvez aussi l'installer directement depuis l'URL de son dépôt : https://github.com/guim31/gladys-sigenergy.
Sigenergy nécessite Gladys >=5.1.0. Le catalogue dans Gladys se rafraîchit toutes les heures : une nouvelle version est donc disponible au plus tard une heure après sa sortie.
Vous n'utilisez pas encore Gladys ? C'est gratuit et open source : suivez le guide d'installation pour démarrer.
À propos des intégrations externes
Sigenergy est une intégration externe : une intégration communautaire empaquetée dans un conteneur Docker et publiée sur GitHub, que Gladys installe en un clic et exécute dans un bac à sable isolé de son cœur. Elle est publiée et maintenue par guim31, et non par l'équipe cœur de Gladys.
- Parcourir toutes les intégrations, natives et communautaires
- Créer et publier votre propre intégration externe
- Code source sur GitHub — source de cette documentation