NEWS
Test Adapter victron-gx im latest
-
Aktuelle Test Version 0.8.10 Veröffentlichungsdatum 16.07.2026 Github Link https://github.com/Sefina-DS/ioBroker.victron-gx
🔌 victron-gx – Victron GX Geräte (Cerbo GX, Venus GX, Ekrano GX) nativ in ioBroker
⚠️ Hinweis gemäß Forenregeln: Dieser Adapter wurde mit Unterstützung von KI (Claude von Anthropic) entwickelt. KI war dabei mein Werkzeug – so wie andere einen Linter, ein Framework oder Stack Overflow nutzen. Architektur, Designentscheidungen und Tests lagen bei mir.
Der Adapter ist ab sofort im offiziellen ioBroker-Repository (Latest) verfügbar.
📥 Installation: Im Admin unter „Adapter" nach „Victron GX" suchen und installieren – keine GitHub-URL nötig. (Latest-Repo muss aktiviert sein.)Was der Adapter kann:
✅ Vollständig lokale Verbindung via MQTT – keine Cloud, kein VRM-Konto nötig
✅ Automatische Device Discovery – Batterie/BMS, MultiPlus, MPPT, Grid Meter, PV-Wechselrichter werden automatisch erkannt
✅ Volle ESS-Steuerung via Modbus TCP – Sollwerte, Min-SoC, Einspeisegrenzen und mehr
✅ Virtuelle Schalter schaltbar
✅ Saubere Datenpunkt-Struktur mit Einheiten und Rollen
✅ Kein manuelles Eintragen von RegisternIch suche:
🔍 Tester mit Victron GX Hardware (egal welches Modell) – besonders Drei-Phasen-Anlagen und verschiedene BMS
💬 Feedback zur Datenpunkt-Struktur
🐛 Bug-Reports aus der PraxisChangelog:
0.8.10 (04.07.2026)
- Review-Korrekturen für die Aufnahme ins offizielle Repository
- Log-Meldungen, Admin-Tabs und Zustandsbezeichnungen auf Englisch
- Seriennummern in Objekt-IDs bereinigt
- Übersetzungen vervollständigt, Dokumentation überarbeitet
- Batterie-Alarm-Rollen korrigiert (value.warning)
Fragen, Feedback und Kritik sehr willkommen! 🙏
-
🚀 Update v0.9.0 – Shelly-Integration + Multi-Kanal-Support
Hallo zusammen,
v0.9.0 ist raus – das größte Update seit der Aufnahme ins Latest-Repository.
⚠️ Breaking Change – bitte vor dem Update lesen
Switch-Ausgänge und AC-Load-Ausgänge liegen jetzt unter outputs.<N>.State/Status statt direkt am Device-Ordner.
Beispiel für Node-RED Virtual Switches:
- Alt: devices.switch.<Group>.<Serial>.State
- Neu: devices.switch.<Group>.<Serial>.outputs.1.State
Wer diese Pfade in Vis oder Skripten referenziert, muss die anpassen. Details in der README unter „Shelly integration & multi-channel support".
✨ Neu: Shelly-Geräte am GX
Volle Multi-Channel-Unterstützung für Shelly-Geräte, die über die dbus-shelly-Bridge am Cerbo/Venus/Ekrano GX eingebunden sind (Venus OS 3.60+ erforderlich).Bei mir zuhause getestet mit:
- Shelly Plus-Serie (Plus 1, 1PM, 2PM, Plug S)
- Shelly Plugs
- Shelly Pro3 (Switch)
- Shelly 1PM (als AC-Load mit Messung + Schaltausgang)
Shelly PM-Geräte werden ab Modell-Version 3 unterstützt – analog zur Kompatibilitätsliste von Victron selbst.
Der Adapter erkennt Shellys automatisch, führt Multi-Kanal-Geräte (z.B. Pro3 mit 3 Kanälen) zu einem Objektbaum zusammen und schaltet über die von Victron erwartete MQTT-Struktur.
Als Bonus: das interne Relais des GX ist jetzt auch schaltbar.
✨ Neu: Erweiterte AC-Load-Datenpunkte
- Ac.Power (Gesamtleistung)
- Ac.Energy.Reverse und Ac.L*.Energy.Reverse
- Ac.L*.PowerFactor
- Zusätzliche Metadaten: Role, IsGenericEnergyMeter, PhaseSetting, ProductId
✨ Neu: Cleanup-Toggle
Neues Optionsfeld „Verwaiste Kanäle beim Start entfernen" (Default aus). Räumt Karteileichen auf, die entstehen, wenn ihr am GX Kanäle in eine andere Gruppe verschiebt oder Kanäle deaktiviert. Konservativ: Geräte, deren Serial noch bekannt ist aber gerade nicht sendet, bleiben unberührt – kein Datenverlust bei offline stehenden Geräten.🔧 Fixes
- Objekt-Store-Race bei paralleler Kanal-/State-Anlage
- Group-Migrations-Zombies werden jetzt entfernt
- Kachel-IP und Weboberflächen-Link zeigen jetzt die korrekte GX-IP der jeweiligen Instanz (bei Mehrfach-Instanzen)
- Diverse Log- und Cosmetic-Fixes
🔬 Ich suche weiterhin
- Feedback von Shelly-Nutzern am GX – funktionieren eure Geräte wie erwartet?
- Berichte von Multi-Instanz-Setups (mehrere GX-Geräte im Netz)
- Ganz generell: Bug-Reports aus der Praxis
Der Adapter ist im Latest-Repository bereits als v0.9.0 verfügbar. Update über die Admin-UI wie gewohnt.
Bei Fragen oder Problemen: einfach hier antworten. 🙏
-
Hab die 0.9.0 laufen
Multiplus wird erkannt
Shelly Pro 3em als Gridmeter über dbus Skript wird erkannt
Hoymiles WR als Virtual Device per Node Red eingebunden wird erkannt
7 Smartsolar werden erkannt
Daten vom BMS werden beim Multiplus angezeigtBrauchst du sonst noch was an Infos?
-
@sefina: Ist auch angedacht das Victron Energy Interface MK3 zu unterstützen? Derzeit hole ich mir die Daten mit https://github.com/j9brown/victron-mk3 und einem Python-Script in meinen MQTT-Adapter. Bringt mir diese Datenpunkte:

Funktioniert soweit reibungslos, doch dafür einen Adapter zu haben, würde alles vereinfachen.
-
@sefina: Ist auch angedacht das Victron Energy Interface MK3 zu unterstützen? Derzeit hole ich mir die Daten mit https://github.com/j9brown/victron-mk3 und einem Python-Script in meinen MQTT-Adapter. Bringt mir diese Datenpunkte:

Funktioniert soweit reibungslos, doch dafür einen Adapter zu haben, würde alles vereinfachen.
@Dr.-Bakterius Hast du keinen Cerbo oder Raspi mit Venus OS oder welche Daten brauchst du vom MK3?
-
Toller Adapter, ich probiere gerade ein ein wenig rum.
Es werden Solar Charger, Grid Meter, Inverter/Charger (nur einer von drei) auf dem erkannten läuft auch das GX System (also ein Multiplus GX) erkannt.
Die Batterie wird nicht erkannt (Pylontech Batterie)
In der Datenpunkt-Struktur unter:
victron-gx.0.devices.system wird nichts angelegt (Ordner leer)Einige Daten der Batterie, aber nicht alle, finde ich unter:
victron-gx.0.overview.Dc.BatteryHabe ich irgendetwas übersehen ?
-
@Dr.-Bakterius Hast du keinen Cerbo oder Raspi mit Venus OS oder welche Daten brauchst du vom MK3?
Hast du keinen Cerbo oder Raspi mit Venus OS oder welche Daten brauchst du vom MK3?
Venus OS wird ja nicht mehr wirklich supportet. Zudem ist das auch nicht pflegeleichter als die Lösung die ich derzeit habe. Ein Adapter der das direkt im ioBroker macht, wäre schon fein. Die auslesbaren DP habe ich ja oben beigefügt.
-
Toller Adapter, ich probiere gerade ein ein wenig rum.
Es werden Solar Charger, Grid Meter, Inverter/Charger (nur einer von drei) auf dem erkannten läuft auch das GX System (also ein Multiplus GX) erkannt.
Die Batterie wird nicht erkannt (Pylontech Batterie)
In der Datenpunkt-Struktur unter:
victron-gx.0.devices.system wird nichts angelegt (Ordner leer)Einige Daten der Batterie, aber nicht alle, finde ich unter:
victron-gx.0.overview.Dc.BatteryHabe ich irgendetwas übersehen ?
@Maximal du hast nichts übersehen, er pflegt nur das ein was er kennt, wenn du etwas hast was er nicht kennt siehst du es nicht.

Unter Einstellungen -> Alle Topic -> Download
Mir die Datei schicken und dann kann ich neue Geräte Einpflegen.
-
Hast du keinen Cerbo oder Raspi mit Venus OS oder welche Daten brauchst du vom MK3?
Venus OS wird ja nicht mehr wirklich supportet. Zudem ist das auch nicht pflegeleichter als die Lösung die ich derzeit habe. Ein Adapter der das direkt im ioBroker macht, wäre schon fein. Die auslesbaren DP habe ich ja oben beigefügt.
-
@Dr.-Bakterius da stehe ich gerade auf den Schlauch wie du mit den MK3 kommunizierst, weil ich habe auch einen der mit meinen PI und meinen MP2 redet .....
Mir fehlt da aber gerade die Verbindung
Mir fehlt da aber gerade die Verbindung
Ich habe diese Python Library von GITHUB installiert und das folgende Skript schreibt mir die Werte in den MQTT-Adapter von ioBroker. Aber frage mich nicht nach Details, mir hat die KI dabei geholfen.
#!/usr/bin/env python3 import subprocess import re import time import logging import paho.mqtt.client as mqtt import sys MQTT_HOST = "127.0.0.1" MQTT_PORT = 1883 BASE_TOPIC = "victron/mk3" SERIAL_DEVICE = "/dev/ttyUSB1" CLI_PATH = "/opt/victron-mk3/cli.py" CLI_CWD = "/opt/victron-mk3" logging.basicConfig(level=logging.INFO, format="%(asctime)s %(message)s") SECTION_RE = re.compile(r"^[A-Za-z][A-Za-z0-9]*$") VALUE_RE = re.compile(r"^\s+([a-zA-Z_0-9]+):\s*(.*)$") client = mqtt.Client(mqtt.CallbackAPIVersion.VERSION2) client.username_pw_set("******", "******") client.connect(MQTT_HOST, MQTT_PORT, 60) client.loop_start() def publish(section, key, value): topic = f"{BASE_TOPIC}/{section}/{key}" client.publish(topic, value, retain=True) def run_monitor(): current_section = None proc = subprocess.Popen( [sys.executable, CLI_PATH, "monitor", SERIAL_DEVICE], cwd=CLI_CWD, stdout=subprocess.PIPE, stderr=subprocess.STDOUT, text=True, bufsize=1, ) for line in proc.stdout: raw = line.rstrip("\n") if not raw.strip(): continue # bekannte, harmlose Python-Warnungen ignorieren if "DeprecationWarning" in raw or raw.strip().startswith("loop ="): continue if not raw.startswith(" ") and SECTION_RE.match(raw.strip()): current_section = raw.strip() publish(current_section, "_last_seen", int(time.time())) continue m = VALUE_RE.match(raw) if m and current_section: key, value = m.group(1), m.group(2) publish(current_section, key, value) else: logging.warning(f"Nicht erkannte Zeile (current_section={current_section}): {raw!r}") while True: try: run_monitor() except Exception as e: logging.error(f"Fehler, starte neu in 10s: {e}") time.sleep(10) -
@sefina
Ich habe den Adapter jetzt auch mal installiert und muss sagen gefällt mir. Diverse Werte, die man sich sonst aus den MQTT-Werten erst in eigene Datenpunkte "lesbar" konvertieren muss, kommen hier out of the box. Sehr schön.
Die MPPT's, der VM-3P75CT, sowie die eingebundenen JK-BMS werden wie erwartet gefunden und auch mein über MQTT/NodeRed ins Victron System eingebundener Huawei-WR wird als
victron-gx.0.overview.Ac.PvOnGridgefunden und die Werte angezeigt.Was ich bisher in den Datenpunkten nicht gefunden habe, sind meine 4 Temperatursensoren und den per GitHub Skript eingebundenen Go-e-Charger
-
@sefina
Ich habe den Adapter jetzt auch mal installiert und muss sagen gefällt mir. Diverse Werte, die man sich sonst aus den MQTT-Werten erst in eigene Datenpunkte "lesbar" konvertieren muss, kommen hier out of the box. Sehr schön.
Die MPPT's, der VM-3P75CT, sowie die eingebundenen JK-BMS werden wie erwartet gefunden und auch mein über MQTT/NodeRed ins Victron System eingebundener Huawei-WR wird als
victron-gx.0.overview.Ac.PvOnGridgefunden und die Werte angezeigt.Was ich bisher in den Datenpunkten nicht gefunden habe, sind meine 4 Temperatursensoren und den per GitHub Skript eingebundenen Go-e-Charger
@Samson71 wenn etwas fehlt, ist es wichtig mir den Katalog zu geben.
Wenn ich den habe und man mir sagt was benötigt wird (falls etwas nicht erkannt wird) und welche werte wichtig sind, kann ich es entspannt einpflegen.Ansonsten, freut es mich das er funktioniert.
-
@Samson71 wenn etwas fehlt, ist es wichtig mir den Katalog zu geben.
Wenn ich den habe und man mir sagt was benötigt wird (falls etwas nicht erkannt wird) und welche werte wichtig sind, kann ich es entspannt einpflegen.Ansonsten, freut es mich das er funktioniert.
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden



