hier hat @Layer8 die Spannungen seiner einzelnen Zellen hübsch in Grafana aufbereitet. Scheinbar hat er/sie dafür separate Hardware im Einsatz.
Gibt es – vorausgesetzt das JK BMS ist über TTL/RS485 schon an Venus OS angebunden – ohne weitere Zusatzhardware keinen Weg, die einzelnen Zellspannungen über z.B. MQTT oder Modbus vom Venus OS zugänglich zu machen? Das Venus OS scheint sie (dank dbus-serialbattery) ja zu kennen, da sie auf dessen Konsole sichtbar sind.
Damit habe ich mich auch schon befasst aber noch keine ordentliche Lösung gefunden. In dem anderen Thread werden alle Zellspannungen mittels eines ESP über die TTL Schnittstelle des JK BMS ausgelesen. Diese Schnittstelle ist aber bereits belegt wenn du den RS485 Adapter für die Verbindung zum Venus OS in Nutzung hast.
Über Modbus TCP könnte man dann noch die Zellspannungen auslesen - leider gibt es da aber nur 2 verfügbare Werte: Höchste und niedrigste Zellspannung. Also so wie es auch im Venus OS angezeigt wird.
Am liebsten wäre es mir wenn man die Schnittstelle am JK "doppeln" könnte. Dann könnte man das ESP Projekt und den RS485 Adapter verwenden.
Ich nutze es derzeit so, dass ich mit einem ESP32 per Bluetooth das JKBMS auslese und zusätzlich am TTL-Port das Venus OS habe.
Bislang funktioniert es bestens und über Bluetooth bekommt man alle Daten inklusive der einzelnen Zellspannungen ausgelesen. Über das ESPHome Projekt in Home Assistant eingebunden kann man sogar die App ersetzen, denn man kann darüber sogar die Einstellungen des BMS ändern. Wobei ich das noch nicht gebraucht habe und somit noch nicht getestet habe.
Man kann da sowohl per TTL verbinden, als auch über BT. Und das BMS gibt auch beides parallel aus (muss es ja auch, da die App-Nutzung parallel zum TTL möglich ist).
Muss mal schauen ob die das BMS ohne Zellen in Betrieb nehmen kann um dann das ESPHome Projekt zu testen. Wäre schon klasse wenn man die Werte einzeln darstellen könnte um somit auch rechtzeitig verdächtige Zellen zu erkennen.
Das BMS habe ich schon hier, die Zellen halt noch nicht, daher kann ich mit dem Auslesen / Anzeigen hier noch nicht viel weiter helfen
@wawibu Kannst du ohne Probleme schon jetzt testen. Mein JK hängt auch nur am Labornetzteil. Plus Minus jeweils auf die Versorgungseingänge und eine Minus Leitung parallel auf den blauen B-. Dann kannst du das BMS starten.
@regda der wandelt RS485 auf TCP. Habe dort mehrere SDM via RS485 dran hängen und auf der IP Seite verbinden sich aktuell VenusOS, IPSymcon und openWB um die Daten der Zähler per TCP zu bekommen.
Die Anpassung in der dbus-modbus-client.py hast Du gemacht nehme ich an und die TWE_Eastron Dateien auch im Ordner /opt/victronenergy/dbus-modbus-client/
Wenn Du den SDM per USB Adapter via RS485 auslesen willst, musst Du in der TWE_Eastron_SDM630v2.py ganz unten den Eintrag bei methods=['tcp'] auf methods=['tcp','rtu'] (glaube ich zumindest das das so war) ändern. Dann sollte das auch mit einem USB Adapter klappen - habe ich aber nicht getestet.
Ich hab inzwischen sogar ohne den esp32, also nur mit dbus-serialbattery und dbus-mqtt die einzelnen Zellspannungen im Home Assistant und somit auch in Grafana.
Bedeutet ein Bauteil weniger und eine Kabelverbindung statt BT. Zellspannungen sind alle auf 0V, weil das JK BMS gerade nur am Labornetzteil hängt.
Jens Rehpöhler hat auf seinem youtube-Kanal "meine Energiewende" im Video "#Victron GX / MP2 + #Node-RED: Steuerung von Verbrauchern im Smarthome." gezeigt, wie man an die Daten aus dem MP2 via MQTT rankommt. Das funktioniert mit meinem JKBMS, ich weiß nicht, ab das allgemeingültig für andere BMS ist.
Die entsprechenden Topics hat @layer8 oben schon gezeigt. Also so in etwa:
funktioniert prima. Jens hat im NR auch eine Liste aller verfügbaren topics auf die Platte schreiben lassen.
Wichtig ist, dass man den MP2 immer wieder triggern muss, sonst stellt er das Senden der MQTT Telegramme nach ein paar Minuten ein.
Dazu habe ich im NodeRed einen Inject-Node so eingestellt, dass er zyklisch alle 30 Sekunden ein timestamp an das Topic
@ralph8k6 Danke für die Hilfe! Ich habe es nun versucht nachzubauen. im Mqtt Explorer bekomme ich alle Topics - zyklisch getriggert über einen kleinen Flow in Node Red. Ich bekomme es aber nicht hin die einzelnen Spannungen als Sensor/Entität in Home Assistant anzulegen. HA zeigt immer "unknown". Könntest du ein Beispiel Eintrag deiner configuation.yaml einstellen?
Danke - habe es jetzt hinbekommen. Noch als Ergänzung für Interessierte mit Home Assistant: Ihr müsst zusätzlich auch noch eine Bridge Verbindung zwischen Venus MQTT Broker und dem Home Assistant MQTT Broker herstellen:
Das Venus MQTT erhalte ich am Leben mittels einem Trigger alle 25s über Node-Red. Geht aber auch über Home Assistant Automationen: