Zitat von Micro1972
Beitrag anzeigen
Ankündigung
Einklappen
Keine Ankündigung bisher.
OBS - ein neuer Player in der Serverlandschaft?
Einklappen
X
-
Hallo OBS-Entwickler,
ich schaue mir aktuell Euren OpenBridgeServer (Nightly 32c74b2, in Proxmox auf einem NUC) etwas an und finde es beeindruckend, was Ihr bisher entwickelt habt - toll.
Im ersten Schritt würde ich den OBS dazu verwenden wollen, Informationen zwischen verschiedenen Welten (knx, onewire, mqtt) auszutauschen und ein paar Logiken einzubauen. owserver bzw. ein separater, externer mosquitto laufen bereits auf einem anderen PC und sind per Adapter in OBS eingebunden.
An einer Stelle stehe ich jedoch etwas auf dem Schlauch und bitte um Hilfestellung.
Aufgabe: Ein Onewire-Sensor liefert eine Temperatur, die auf eine KNX-GA und in ein MQTT-Topic geschrieben werden soll.
Unabhängig vom Lesezyklus des OneWire-Adapters soll der letzte Wert stets per MQTT-Topic und in der KNX-GA zur Verfügung stehen.
Ich hätte daher gedacht, dass bei dem OBS-Objekt bei den Adapter-Verknüpfungen folgende Eigenschaften sinnvoll sind:
Onewire: "direction": "SOURCE
MQTT: "direction": "DEST", "retain": true
KNX: "direction": "DEST", "respond_to_read": true
Damit wäre m.E. klar, dass OBS die Hoheit über den aktuellen Wert hat, diesen vom Onewire-Adapter liest und bei Änderung auf den MQTT- und KNX-Adapter schreibt.
MQTT-seitig wäre der letzte Wert wegen des Retain-Flags jederzeit lesbar.
KNX-seitig hätte ich erwartet, dass ich mit dem Flag "respond_to_read": true erreichen kann, dass der Wert jederzeit per KNX-Leseanfrage vom OBS erfragt werden kann. Leider ist es mir jedoch nicht möglich, dieses Flag "Antworte auf Leseanfragen "im Frontend zu setzen , wenn als Richtung "Schreiben (to adapter)" gewählt ist, da dann diese Checkbox nicht sichtbar ist.
Natürlich könnte ich im KNX-Binding die Richtung "BOTH" setzen, um die "Antwort auf Leseanfragen" auch anhaken zu können. Dies würde es jedoch erlauben, die Temperatur auch über KNX zu setzen, was in diesem Szenario nicht gewünscht ist.
Daher möchte ich fragen, wie bei einem Datenpunkt zu verfahren ist, über den der OBS durch den OneWire-Adapter die Hoheit hat und der nur zur KNX-Adresse bzw. MQTT-Topic geschrieben werden soll?
Vielen Dank, Alex
PS: Ein noch einfacheres Szenario mit derselben Fragestellung ergibt sich, wenn über MQTT Werte von Datenpunkten empfangen werden und diese einfach nach KNX weiter gereicht werden sollen, von dort jedoch nicht geändert werden können.
Kommentar
-
Naja das KO muss auch Direction Source sein, weil sonst kann auch die Leseanfrage selbst nicht am virtuellen KO ankommen.Zitat von Alex Beitrag anzeigenDies würde es jedoch erlauben, die Temperatur auch über KNX zu setzen, was in diesem Szenario nicht gewünscht ist.
Mal schauen ob man da an der Adaptereinstellung noch etwas ändern kann, sodass ein Source-KNX-Objekt nur als Eingang für Leseanfragen genutzt wird und kein eingehender Datenwert dann in den OBS durchgereicht wird.
Bis dahin es dennoch so einrichten mit BOTH und halt in der ETS ganz normal darauf achten das es eben nur ein KO im Projekt gibt (jenes des OBS), welches für diese GA effektiv Werte sendet und alle anderen KOs nur Empfänger sind. Den Fehler kann Dir der OBS nicht verhindern, das noch wer anderes mit der GA Datenwerte auf den Bus sendet.
Ist das gewollt und nur der OBS soll diese anderen Werte nicht abnehmen, dann sind es meines Erachtens auch nicht die selben Daten-Informationen (Temperaturen) und es sollten nicht die selben GA benutzt sein.
Wenn der Satz so schon fertig ist, ist es ja kein Problem, nur wenn da noch ein "sollen" ans Ende gehört und der OBS das regeln soll, dann ja ist es vergleichbar. Ansonsten wenn kein anderes Gerät am KNX mit der GA Datenwerte sendet ist es ja egal das der OBS potentielle Datenwerte via dem virtuellen KO mit der GA entgegennehmen kann.Zitat von Alex Beitrag anzeigenEin noch einfacheres Szenario mit derselben Fragestellung ergibt sich, wenn über MQTT Werte von Datenpunkten empfangen werden und diese einfach nach KNX weiter gereicht werden sollen, von dort jedoch nicht geändert werden können.
Am besten ist es dafür einen Issue aufzumachen.
Du wünscht Dir also ein virtuelles KO das der Funktion der Flag-kombination K,L,Ü entspricht, du aber derzeit nur K,Ü oder K,S,L,Ü eingestellt bekommst?Zuletzt geändert von gbglace; Gestern, 20:04.----------------------------------------------------------------------------------
"Der Hauptgrund für Stress ist der tägliche Kontakt mit Idioten."
Albert Einstein
Kommentar


Kommentar