Hi Alex,
wenn es Deine Zeit erlaubt würde ich mich über einen weiteren Hinweis freuen. Generell funktioniert nun alles soweit, wenn ich über einen Inject Knoten ein Register der Helios auslese gelangt dieses auch zur KNX GA - und das auch im korrekten Datenformat. Den MQTT Broker kann ich parallel auch mit den Registerwerten versorgen, also auch das passt. Nun möchte ich aber nicht jedesmal manuell das Lesen eines Registers auslösen, sondern in Intervallen die Daten abfragen. Mein Ansatz war da einfach in den Inject-Knoten ein Interval einzustellen und so die Register entsprechend auszulesen.
Als Ausgabe bin ich direkt an den Modbus Flex Getter Knoten gegangen, habe Buffer in String gewandelt und über einen Filter mit den entsprechenden Registeradressen jedes Register an den zugehörigen KNX Knoten weitergeleitet. Ob das der beste Weg ist weiß ich nicht, aber er passt zu meinem aktuellen Node Red Verständnis:-)
Nun das Problem: Solange ich die Inject Knoten manuell auslöse, landet jeder Registerwert in der korrekten KNX GA. Wenn ich aber in allen Inject-Knoten automatisch Werte abfrage, dann wird immer nur eine KNX GA mit einem Wert versorgt, dies dann aber sehr hochfrequent. Ich habe ein Intervall von 5 Sekunden gewählt. gestartet habe ich alle Intervalle mal nach 0,1s, mal auch für jeden Inject Knoten zeitlich um 0,5s versetzt. Es wirkt so, als ob das Auslesen eines Inject Knotens immer dazu führt, dass immer das erste Register ausgelesen wird.
Von daher die Frage - wie würdest Du der Fragestellung nach kontinuierlichem Auslesen der Register und Weiterleitung der Daten an den jeweiligen KNX Knoten begegnen?
Vielen Dank und Grüße
Marko
wenn es Deine Zeit erlaubt würde ich mich über einen weiteren Hinweis freuen. Generell funktioniert nun alles soweit, wenn ich über einen Inject Knoten ein Register der Helios auslese gelangt dieses auch zur KNX GA - und das auch im korrekten Datenformat. Den MQTT Broker kann ich parallel auch mit den Registerwerten versorgen, also auch das passt. Nun möchte ich aber nicht jedesmal manuell das Lesen eines Registers auslösen, sondern in Intervallen die Daten abfragen. Mein Ansatz war da einfach in den Inject-Knoten ein Interval einzustellen und so die Register entsprechend auszulesen.
Als Ausgabe bin ich direkt an den Modbus Flex Getter Knoten gegangen, habe Buffer in String gewandelt und über einen Filter mit den entsprechenden Registeradressen jedes Register an den zugehörigen KNX Knoten weitergeleitet. Ob das der beste Weg ist weiß ich nicht, aber er passt zu meinem aktuellen Node Red Verständnis:-)
Nun das Problem: Solange ich die Inject Knoten manuell auslöse, landet jeder Registerwert in der korrekten KNX GA. Wenn ich aber in allen Inject-Knoten automatisch Werte abfrage, dann wird immer nur eine KNX GA mit einem Wert versorgt, dies dann aber sehr hochfrequent. Ich habe ein Intervall von 5 Sekunden gewählt. gestartet habe ich alle Intervalle mal nach 0,1s, mal auch für jeden Inject Knoten zeitlich um 0,5s versetzt. Es wirkt so, als ob das Auslesen eines Inject Knotens immer dazu führt, dass immer das erste Register ausgelesen wird.
Von daher die Frage - wie würdest Du der Fragestellung nach kontinuierlichem Auslesen der Register und Weiterleitung der Daten an den jeweiligen KNX Knoten begegnen?
Vielen Dank und Grüße
Marko
Kommentar