NEWS
MQTT Daten für ioBroker aus Victron VRM abgreifen
-
Hallo,
ich möchte die MQTT Daten aus der Victron VRM für ioBroker abgreifen. Direkt geht leider nicht, da die Anlage 140km weit entfernt steht.
Ich habe nun Stundenrund Anleitungen gelesen und kann die Daten nun via MQTT-Explorer abrufen.
Die Daten werden auch regelmäßig erneuert, also genau wie ich es will.Grundlage war: https://communityarchive.victronenergy.com/questions/155407/mqtt-local-via-mqtt-broker.html
Nun dachte ich - einfach die Einstellungen in den ioBroker Client und ich hab alles wie ich will - Pustekuchen.
Die Verbindung mit dem Server steht, aber es werden keine Daten empfangen.Weiss jemand Rat.
-
Hallo,
ich möchte die MQTT Daten aus der Victron VRM für ioBroker abgreifen. Direkt geht leider nicht, da die Anlage 140km weit entfernt steht.
Ich habe nun Stundenrund Anleitungen gelesen und kann die Daten nun via MQTT-Explorer abrufen.
Die Daten werden auch regelmäßig erneuert, also genau wie ich es will.Grundlage war: https://communityarchive.victronenergy.com/questions/155407/mqtt-local-via-mqtt-broker.html
Nun dachte ich - einfach die Einstellungen in den ioBroker Client und ich hab alles wie ich will - Pustekuchen.
Die Verbindung mit dem Server steht, aber es werden keine Daten empfangen.Weiss jemand Rat.
-
Ich denke ich habe es geschafft.
Mit dem Mqtt-client von ioBroker geht es nicht.
Mit dem Mqtt Broker/client funktioniert es, wenn der Broker dann auf client eingestellt ist.
Als Topic muss noch N/<ID>/# zugefügt werden.
Und ein kleines Script mit mqtt.0.R.<ID>.keepalive -
Ich denke ich habe es geschafft.
Mit dem Mqtt-client von ioBroker geht es nicht.
Mit dem Mqtt Broker/client funktioniert es, wenn der Broker dann auf client eingestellt ist.
Als Topic muss noch N/<ID>/# zugefügt werden.
Und ein kleines Script mit mqtt.0.R.<ID>.keepalive -
@bananajoe
Ich habe jetzt alle 45sec eingegeben und lasse Node Red senden.
Da bekomme ich jetzt die Aktualisierungen, aber noch nicht alle Werte.
Ich werde aber mal auf 55sec ändern. -
@bananajoe
Ich habe jetzt alle 45sec eingegeben und lasse Node Red senden.
Da bekomme ich jetzt die Aktualisierungen, aber noch nicht alle Werte.
Ich werde aber mal auf 55sec ändern. -
Tatsächlich hab ich es jetzt hinbekommen.
Die Daten werden mit "Math.round(JSON.parse(val).value * 10) / 10"
im Alias umgewandelt und dann kann ich sie weiter verwenden.
Schade dass ich dass für jeden Wert machen muss, da wäre eine Funktion, die den kompletten Kanal gleich umwandelt schöner, aber es gibt schlimmeres