NEWS
[gelöst] Victron MP2 MQTT Anbindung
-
@fichtendickicht mit dem Mqtt Explorer publishst du einfach ein topic. In dem Fall von Ben wäre das Topic
R/c0619ab24727/keepalive
Sobald einmal gepublished dann taucht der DP im Adapter auf. Du musst ihn nur unbestätigt beschreiben
-
@mickym said in Victron MP2 MQTT Anbindung:
keepalive
das "keepalive" gibt´s wohl schon:
Und wie beschreibe ich den Punkt? Mit Blockly?
-
@fichtendickicht mit Blockly oder JavaScript. Mit NodeRed kannst auch direkt ohne iobroker beschreiben. Aber der Datenpunkt sollte ja auch im Adapter auftauchen
-
-
@fichtendickicht dazu kann ich nicht viel sagen. Veröffentlichen muss die Info das Gerät selbst.
-
Ich glaube dein Blockly ist falsch. Du musst doch sendTo nehmen. Ich an deiner Stelle würde einfach das JavaScript von @Ben1983 nehmen und den Pfad anpassen.
Edit: ich habe mal das sendTo Blockly zusammengebastelt
-
@tt-tom @Fichtendickicht
Es muss lediglich der State über die Objekte angelegt werden.
Dann kannst Du diesen normal mit einem setState beschreiben.
Du kannst es auch mittels MQTT Explorer machen, aber glaube nach einer Minuta verschwinden die Werte dann wieder.
Deshalb "Keepalive" -
Wenn ich es richtig Verstanden habe, hat er ja schon den keepalive. Nur mit dem setzten/schreiben hapert es.
-
-
Dein Script als Blockly. Na mal sehen was jetzt raus kommt.
-
@tt-tom Ich habe es nicht also blockly, sondern damals so gelöst.
schedule('*/30 * * * * *',()=>{ setState("mqtt.0.R.c0619ab24727.keepalive",""); });
-
@ben1983 Es gab hier (Kärnten) gestern ein großes Unwetter und ein Blitzschlag hat mir mehrere Victron-Geräte zerstört. Ich kann erst nach Wiederherstellung weiter testen.
-
@fichtendickicht Oh Nein, das ist ja ärgerlich.
-
@tt-tom So, habe nun eine CERBO-GX eingebaut und das Script laufen lassen. Sieht nun so aus:
Im IO-Broker hab ich aber dennoch nicht mehr Punkte:
Auch de MQTT-Explorer zeigt nicht viel mehr an:
Über MODBUS habe ich allerdings bereits Kontakt:
-
deine Bilder sind vom State her nicht identisch. Im ioBroker hast du den Keepalive Datenpunkt und im MQTT-Explorer nicht.
das Script stoppen und den Keepalive im ioBroker nochmal löschen.
Dann mit dem MQTT - Explorer noch einmal anlegen. -
@tt-tom Danke für den Hinweis. Ich habe interessante Infos über "keepalive" auf folgender Seite gefunden: github. Wenn ich nun im "MQTT Explorer" folgenden Befehl "R/c0619ab363c9/system/0/Serial" publishe, so bekomme ich alle Datenpunkte die das Victron System zu liefern im Stande ist:
Leider verschwinden alle Punkte nach ca. 30 Sekunden wieder und alles ist wieder weg:
Diesen Befehl habe ich auch versucht im Script unterzubringen, leider ohne Erfolg.
Im IOBroker erscheinen nun auch alle Datenpunkte - zumindest im "mqtt-client". Auch mit live-Werten, leider nur für ca. 30 Sekunden. Danach ist alles tot:
-
@fichtendickicht sagte in Victron MP2 MQTT Anbindung:
github
wenn ich das jetzt richtig verstanden habe musst du dein "keepalive" unter "R" anlegen. und bekommst unter N die Daten.
also publish mit MQTT Explorer unter "R/c0619ab363c9/keepalive" und diesen Pfad schreibst du dann auch in das Blockly / Script
-
Ich hänge mich hier mal rein, möchte dafür nicht ein extra Thread eröffnen, vielleicht hat jemand dasselbe ja schon gelöst.
Ich bekomme per MQTT nun die Daten von der Venus, unter anderem meine Gesamterzeugung vom Wechselrichter, docher der Wert schwankt extrem, innerhalb von einer Sekunde mehrfach.
Das sieht in der VIS sehr unschön aus.
Ich nehme den Datenpunkt auch und wandel den in ein Alias um, diesen speicher ich in einer influxdb ab, dort kann ich ja sagen, dass er x ms Zeit nehmen soll bis er den nächsten Wert speichert, damit umgehe ich in der DB ein "Überlauf".Aber wie kann ich denn zB den MQTT "drosseln", dass er die Werte nur sekündlich empfängt.
Ich habe bisher nichts gefunden, wie ich in der Venus das senden ändern kann.Im Aliasmanager kann ich auch keine Dämpfung einbauen.
Klar ich kann ein Skript machen und den Wert dämpfen, bevor ich ihn unter aliases umleite für die VIS und influxdb, aber eventuell geht es ja auch anders... .? -
@tugsi Du kannst nur am Sender beeinflussen was und wie oft ein Gerät sendet. Wenn Du das dämpfen möchtest dann musst Du das mit einem eigenen Datenpunkt und deiner Logikmaschine machen.
-
@mickym Das habe ich mir schon gedacht ... so ist mir das zu "hektisch", meine Frau bekommt schon die Krise, wenn sie auf das Panel schaut *lach ...
Ok, dann schaue ich nochmal, ob ich doch noch was in der Venus OS finde, ansonsten muss ich den Schritt über ein Script gehen...
Danke Dir!