Captures d’écran Extraites du README de ffunes/Omnibattery.
À propos
Omnibattery est une intégration personnalisée qui surveille et contrôle les batteries domestiques Marstek Venus et Zendure, entre autres marques. Elle communique avec les batteries en local, via Modbus TCP, Modbus RTU série ou HTTP local selon la marque, et se configure dans l’interface. Un régulateur proportionnel-dérivé maintient l’échange avec le réseau près de zéro, avec des profils de réglage sélectionnables et un capteur qui indique la qualité de la régulation. Plusieurs batteries de marques différentes peuvent être gérées ensemble, avec un partage de la charge et une priorité selon l’état de charge. La charge peut être planifiée à partir des prévisions solaires et des prix dynamiques, avec des plages horaires par batterie, une charge complète hebdomadaire et un écrêtage des pics. Elle ajoute des capteurs, des interrupteurs, des nombres, des sélecteurs, des boutons et des capteurs binaires, ainsi qu’une protection facultative du courant triphasé et des avis de correction.
Résumé automatique du README et du code de ffunes/Omnibattery, traduit automatiquement. Une erreur, ou tu maintiens ce projet et tu veux ton propre texte ici ? Prendre contact
Prise en charge
Fonctionne en local Communique avec tes appareils sur ton propre réseau. Aucun cloud de fournisseur entre les deux.
Détection automatique Home Assistant la repère sur le réseau et propose de l’ajouter.
Depuis la Marketplace S’installe depuis la Marketplace, anciennement HACS.
Maintenance active Son auteur a publié une version ou poussé une modification au cours des six derniers mois.
Fournit
- Interrupteurs
- Capteurs
Mise en place
Installe-la depuis la Marketplace et redémarre Home Assistant, puis ajoute-la dans Paramètres > Appareils et services.
Configurer Omnibattery
- Capteur de consommation réseauCapteur temps réel de puissance importée (+) ou exportée (-) vers le réseau. Des mises à jour toutes les 1-2 secondes sont recommandées. Les capteurs plus lents sont acceptés, mais les mesures retardées réduisent la qualité de régulation ; la dernière mesure est suivie pendant 65 secondes au maximum.
- Capteur de puissance hors réseau (facultatif)Compteur W/kW séparé pour le circuit secouru. Il doit être différent du capteur réseau normal. Sa configuration expose un interrupteur logiciel qui sélectionne cette source pour la régulation et les statistiques ; elle n'active pas le port physique hors réseau/EPS de la batterie.
- Signe du compteur hors réseau inverséActivez cette option lorsque le capteur hors réseau utilise la convention opposée : positif = exportation et négatif = consommation. Elle ne s'applique que lorsque le mode compteur hors réseau est actif.
- Capteur de prévision solaire de la journée entière (ancien)Ancien capteur fournissant la prévision solaire de la journée entière. Les installations existantes peuvent continuer à l'utiliser pendant la transition ; pour les nouvelles configurations, préférez Restant aujourd'hui.
- Capteur de prévision solaire restante aujourd'hui (recommandé)Capteur fournissant la production solaire encore attendue aujourd'hui en kWh. Lors de l'enregistrement, il remplace l'ancienne prévision de la journée entière et n'est jamais diminué de la production déjà mesurée.
- Capteur de production solaire (optionnel)Capteur de puissance de production photovoltaïque en temps réel (W/kW) d'un onduleur externe non raccordé aux entrées MPPT de la batterie. Utilisé pour afficher le nœud Solaire dans le diagramme de flux d'énergie du tableau de bord. Laissez vide si vos panneaux alimentent directement le MPPT de la batterie.
- Signe du compteur inverséActivez cette option si votre compteur utilise la convention opposée : positif = exportation, négatif = importation. L'unité (W/kW) est détectée automatiquement.
- Puissance maximale souscrite (W)Puissance totale souscrite en watts. Le système ne dépassera pas cette limite lors de la charge pour éviter de déclencher le disjoncteur
- Activer la protection de courant triphaséeEnveloppe de sécurité de courant optionnelle pour les installations triphasées ; configurez les capteurs et la phase physique de chaque batterie à l'étape suivante.
Protection de courant triphasée
- Capteur de courant réseau L1Courant RMS signé en temps réel de la phase physique L1. Les unités A et mA sont acceptées.
- Capteur de courant réseau L2Courant RMS signé en temps réel de la phase physique L2. Les unités A et mA sont acceptées.
- Capteur de courant réseau L3Courant RMS signé en temps réel de la phase physique L3. Les unités A et mA sont acceptées.
- Taille du fusible L1 (A)Taille/limite du fusible de L1 en ampères. Saisissez une valeur inférieure au nominal pour laisser une marge aux latences et aux pointes transitoires.
- Taille du fusible L2 (A)Taille/limite du fusible de L2 en ampères. Saisissez une valeur inférieure au nominal pour laisser une marge aux latences et aux pointes transitoires.
- Taille du fusible L3 (A)Taille/limite du fusible de L3 en ampères. Saisissez une valeur inférieure au nominal pour laisser une marge aux latences et aux pointes transitoires.
Étape 3
- Phase physique de la batterie
Nombre de batteries
- Nombre de batteries
Étape 5
- Marque de la batterieMarstek Venus : Modbus TCP. Zendure SolarFlow : HTTP local (HEMS doit être désactivé pour le contrôle par Omnibattery). Anker SOLIX Solarbank Max AC / 4 E5000 Pro : Modbus TCP (active Modbus TCP sous Third-Party Control dans l’app Anker ; un seul client Modbus à la fois). Sessy : HTTP local.
Étape 6
- NomNom descriptif pour identifier cette batterie
- Adresse IPAdresse IP de la batterie sur votre réseau local. Laissez vide si vous utilisez un port série.
- Port ModbusPort Modbus (généralement 502)
- ID d'esclave ModbusID d'esclave/unité Modbus (par défaut 1). À modifier uniquement lorsqu'un proxy Modbus expose plusieurs batteries sur une même IP:port avec des ID d'esclave distincts.
- Modèle de batterieSélectionnez la version du modèle de votre batterie. Ev2 pour les anciens modèles, Ev3 pour les nouveaux modèles avec cartographie mise à jour, A (Venus A) ou D (Venus D) pour les onduleurs hybrides
- Port série (Modbus RTU)Chemin de l'adaptateur USB-RS485, p. ex. /dev/ttyUSB0 ou COM3. Renseignez-le à la place de l'adresse IP pour utiliser Modbus RTU en série ; laissez vide pour le TCP.
- Accessible via une passerelle RS485Cochez si la connexion Modbus TCP aboutit à une passerelle RS485 (Elfin EW11, pont USB-RS485...) plutôt qu'au port TCP de la batterie elle-même. L'attente entre messages n'existe que dans le serveur TCP de la batterie ; la réduire à 30 ms rend l'interrogation d'une Venus Ev3/A/D environ trois fois plus rapide. L'attente s'applique par batterie : si plusieurs batteries partagent une passerelle, le bus transporte d'autant plus de trafic — décochez alors de nouveau si les lectures échouent ou expirent. Laissez décoché si vous vous connectez directement à l'IP de la batterie.
Étape 7
- NomNom descriptif pour identifier cette batterie
- Adresse IPAdresse IP du Zendure SolarFlow sur votre réseau local
- Port HTTPPort HTTP (par défaut 80)
Étape 8
- Nom
- ID d'appareil MQTTID MQTT Hoymiles, par exemple MSA-280024341346.
- Modèle de batterieUtilisez la détection automatique sauf si l'appareil publie un modèle incorrect ou générique.
Après la mise en place
- Batterie
- Capteur de consommation réseauCapteur temps réel de puissance importée (+) ou exportée (-) vers le réseau. Des mises à jour toutes les 1-2 secondes sont recommandées. Les capteurs plus lents sont acceptés, mais les mesures retardées réduisent la qualité de régulation ; la dernière mesure est suivie pendant 65 secondes au maximum.
- Capteur de puissance hors réseau (facultatif)Compteur W/kW séparé pour le circuit secouru. Il doit être différent du capteur réseau normal. Sa configuration expose un interrupteur logiciel qui sélectionne cette source pour la régulation et les statistiques ; elle n'active pas le port physique hors réseau/EPS de la batterie.
- Signe du compteur hors réseau inverséActivez cette option lorsque le capteur hors réseau utilise la convention opposée : positif = exportation et négatif = consommation. Elle ne s'applique que lorsque le mode compteur hors réseau est actif.
- Capteur de prévision solaire de la journée entière (ancien)Ancien capteur fournissant la prévision solaire de la journée entière. Les installations existantes peuvent continuer à l'utiliser pendant la transition ; pour les nouvelles configurations, préférez Restant aujourd'hui.
- Capteur de prévision solaire restante aujourd'hui (recommandé)Capteur fournissant la production solaire encore attendue aujourd'hui en kWh. Lors de l'enregistrement, il remplace l'ancienne prévision de la journée entière et n'est jamais diminué de la production déjà mesurée.
- Capteur de production solaire (optionnel)Capteur de puissance de production photovoltaïque en temps réel (W/kW) d'un onduleur externe non raccordé aux entrées MPPT de la batterie. Utilisé pour afficher le nœud Solaire dans le diagramme de flux d'énergie du tableau de bord. Laissez vide si vos panneaux alimentent directement le MPPT de la batterie.
- Signe du compteur inverséActivez cette option si votre compteur utilise la convention opposée : positif = exportation, négatif = importation. L'unité (W/kW) est détectée automatiquement.
- Puissance maximale souscrite (W)Puissance totale souscrite en watts. Le système ne dépassera pas cette limite lors de la charge pour éviter de déclencher le disjoncteur
- Activer la protection de courant triphaséeEnveloppe de sécurité de courant optionnelle pour les installations triphasées ; configurez les capteurs et la phase physique de chaque batterie à l'étape suivante.
- Capteur de courant réseau L1Courant RMS signé en temps réel de la phase physique L1. Les unités A et mA sont acceptées.
- Capteur de courant réseau L2Courant RMS signé en temps réel de la phase physique L2. Les unités A et mA sont acceptées.
- Capteur de courant réseau L3Courant RMS signé en temps réel de la phase physique L3. Les unités A et mA sont acceptées.
- Taille du fusible L1 (A)Taille/limite du fusible de L1 en ampères. Saisissez une valeur inférieure au nominal pour laisser une marge aux latences et aux pointes transitoires.
- Taille du fusible L2 (A)Taille/limite du fusible de L2 en ampères. Saisissez une valeur inférieure au nominal pour laisser une marge aux latences et aux pointes transitoires.
- Taille du fusible L3 (A)Taille/limite du fusible de L3 en ampères. Saisissez une valeur inférieure au nominal pour laisser une marge aux latences et aux pointes transitoires.
- Phase physique de la batterie
- Nombre de batteries
- Marque de la batterieMarstek Venus : Modbus TCP. Zendure SolarFlow : HTTP local (HEMS doit être désactivé pour le contrôle par Omnibattery). Anker SOLIX Solarbank Max AC / 4 E5000 Pro : Modbus TCP (active Modbus TCP sous Third-Party Control dans l’app Anker ; un seul client Modbus à la fois). Sessy : HTTP local.
- NomNom descriptif pour identifier cette batterie
- Adresse IPAdresse IP de la batterie sur votre réseau local. Laissez vide si vous utilisez un port série.
- Port ModbusPort Modbus (généralement 502)
- ID d'esclave ModbusID d'esclave/unité Modbus (par défaut 1). À modifier uniquement lorsqu'un proxy Modbus expose plusieurs batteries sur une même IP:port avec des ID d'esclave distincts.
- Modèle de batterieSélectionnez la version du modèle de votre batterie. Ev2 pour les anciens modèles, Ev3 pour les nouveaux modèles avec cartographie mise à jour, A (Venus A) ou D (Venus D) pour les onduleurs hybrides
- Port série (Modbus RTU)Chemin de l'adaptateur USB-RS485, p. ex. /dev/ttyUSB0 ou COM3. Renseignez-le à la place de l'adresse IP pour utiliser Modbus RTU en série ; laissez vide pour le TCP.
- Accessible via une passerelle RS485Cochez si la connexion Modbus TCP aboutit à une passerelle RS485 (Elfin EW11, pont USB-RS485...) plutôt qu'au port TCP de la batterie elle-même. L'attente entre messages n'existe que dans le serveur TCP de la batterie ; la réduire à 30 ms rend l'interrogation d'une Venus Ev3/A/D environ trois fois plus rapide. L'attente s'applique par batterie : si plusieurs batteries partagent une passerelle, le bus transporte d'autant plus de trafic — décochez alors de nouveau si les lectures échouent ou expirent. Laissez décoché si vous vous connectez directement à l'IP de la batterie.
- NomNom descriptif pour identifier cette batterie
- Adresse IPAdresse IP du Zendure SolarFlow sur votre réseau local
- Port HTTPPort HTTP (par défaut 80)
Textes issus du code de ffunes/Omnibattery. Les textes que le dépôt ne fournit pas en français ont été traduits automatiquement.
Entités
- Capteurs binairesÉcrêtement de Pointe Actif, Charge Prédictive Active, État de la pré-décharge intelligente, État de la retenue de surplus selon le prix, État de la réserve de décharge, État WiFi, État Cloud, État WiFi de l'ESP, Redémarrage PLL Anormal, Limite de Surchauffe, Limite de Basse Température, Alerte de Ventilateur Anormal et 22 autres
- BoutonsRéinitialiser l'Appareil, Réévaluer la Charge Prédictive
- NombresÉconomie minimale de retenue du surplus, Économie minimale de la réserve de décharge, Puissance de Charge, Puissance de Décharge, Puissance de Charge Max., Puissance de Décharge Max., SOC Limite de Charge, SOC Limite de Décharge, Charger jusqu'à SOC, PD Kp, PD Kd, PD Bande Morte et 37 autres
- SélecteursMode Forcé, Phase de la batterie, Mode de Fonctionnement, Jour de Charge Complète Hebdomadaire, Priorité de charge, Batterie principale, Vente à prix élevé, Profil de Réglage PD, Mode Hors-Réseau
- CapteursFenêtre de Décharge, Batteries Actives, État de la Protection Triphasée, Puissance de cellule batterie du système, Puissance Solaire Totale, Production Solaire Quotidienne, Consommation Domestique Quotidienne, Profil de consommation domestique prévu, Capture actuelle du profil de consommation, Chronologie quotidienne de fonctionnement, Qualité du Contrôle PD, Consommation Domestique et 125 autres
- InterrupteursRetenue de surplus selon le prix, Réserve de décharge, Anticiper la demande réelle, Mode Manuel, Protection de courant triphasé, Suivi Direct sans PD, Mode Compteur Hors Réseau, SOC Minimum Garanti, Limites de Puissance du Système, Charge Prédictive, Mode vacances, Délai de Charge et 19 autres
- HeuresFin de Charge Externe
Actions
- Exclure des jours de consommationRetire des journées locales entières de la consommation apprise, pour un jour qui ne représente pas le foyer : une panne du compteur, un événement ponctuel, une absence. Les compteurs physiques et l'historique restent intacts ; seul l'apprentissage ignore ces jours. L'exclusion est enregistrée, de sorte qu'un backfill ultérieur du Recorder ne peut pas les réintroduire.Champs : Date de début, Date de fin
Dépannage
- DiagnosticsTélécharge un fichier de diagnostics à joindre à un rapport de bug.
- État du systèmeAjoute son état aux informations système de Home Assistant.
- Avis de correctionLes avis qu’elle peut afficher dans Paramètres > Corrections :Indiquez votre chargeur de VE parmi les appareils exclus, Un capteur configuré n'existe plus, La protection triphasée peut être contournée par des commandes manuelles, Le capteur de puissance réseau ne publie plus, Le capteur de puissance réseau se met à jour trop lentement, Données tarifaires inutilisables, Prévision solaire inutilisable, Utiliser une prévision solaire restante
Extrait du README
- Mix and match different battery brands: Marstek, Zendure, Anker Solix, Sessy, Hoymiles MQTT and more to come!
- Zero Export/Import PD Controller: Keeps grid exchange near zero using a Proportional-Derivative algorithm.
- Integrated dashboard: All the controls and adjustments from a single place. Graphs and power flow diagram included!
- One-Click PD Profiles + Quality Sensor: Pick a tuning profile (Very smooth → Very aggressive) instead of tuning gains by hand; a control-quality sensor reports whether the result is stable,…
- Multi-Battery Support: Manage up to 10 batteries with intelligent load sharing and SOC-based priority.
- Predictive Grid Charging: Automatically charges from the grid when solar forecast + battery won't cover tomorrow's consumption. Supports fixed time slots, dynamic pricing, and real-time pricing…
- Negative-price opportunistic charging: Optional Dynamic Pricing-only charging fills each battery to its configured maximum SOC during negative import-price slots, even without solar panels or a…
- Smart Pre-discharge / Anti-curtailment: Optional Dynamic Pricing-only planning creates battery headroom before forecast PV surplus at negative-injection prices, then blocks discharge during the…
- Time Slots: Per-battery windows with independent charge/discharge ticks, optional SOC and power overrides, and a manual mode that forces a fixed charge or discharge power. Up to 8 slots per…
- Weekly Full Charge: Forces 100% SOC once a week for LFP cell balancing.
S’affiche dans Vulpo :
carte Bascule rapide, carte Bouton, carte Sélection, carte Graphique, Apple Watch, centre de contrôle.Informations
- Installations
- 838 partagent leurs statistiques
- Étoiles GitHub
- 206
- Connexion
- Fonctionne en local
- Maintenance
- Mise à jour au cours des 6 derniers mois
- Version
- v1.5.0,
- Catégorie
- Énergie, Solaire et batteries
- Type
- Intégration de la Marketplace
- Prérequis
- Nécessite la Marketplace (HACS sur Home Assistant 2026.10 et les versions antérieures)
- Domaine
omnibattery- Problèmes
- Signaler un problème












