Hallo Zusammen,
nun, nach 1 Jahr ioBroker (kommend von fhem und nun happy), wird es Zeit, im Forum teilzunehmen.
Un natürlich gibt es auch einen Bastler-Anlass. In einer Installation habe ich KNX für die "systemrelevanten" Dinge. Taster, Schaltaktoren etc. laufen über den Bus und machen die basiscs. Für Logiken und als Schnittstelle zu anderen System sitzt dann ioBroker mit NodeRed eine Ebene höher. Dieser Aufbau funktioniert meiner Meinung nach sehr gut und bisher sehr zuverlässig.
Nur in einer Sache komme ich momentan ins Stocken, wobei ich nicht weiß ob das ggf. garnicht vom Adapter unterstütz wird. Das Anliegen habe ich habe ich bereits in Github an die/den des KNX-Adapters gereicht, erhoffe mir hier jedoch ggf. mehr und schneller Anwendererfahrung.
Allgemein formuliert möchte ich gerne auf eine KNX-Leseanfrage aus ioBroker heraus antworten.
Beispiel:
Sturmmeldungen: Wetterdaten lese ich von öffentlichen Diensten aus. Konkret ist es eine Netatmo Station. Somit habe ich aktuelle Wetterdaten in ioBroker. Nach einem Smooth-Verfahren stelle ich fest, ob ein Sturm herrscht. Wenn ja, melde ich das an eine Gruppenadresse 0/4/10. Dazu gibt es die Statusadresse 0/4/12. Dies bewirkt Dinge wie das Hochfahren von Jalousien, direkt in KNX-Aktoren eingestellt.
Für den Fall eines ioBroker-Neustarts kann ich den Wert schon in und um ioBroker handhaben und rekonstuieren.
Meine SmartphoneApp (easyKnx - dazu verliere ich sicher im Forum auch ein paar Worte) fragen bei jedem Start mit einer Leseanfrage auf die Statusadresse den aktuellen Wert ab. Den weiß allerdings nur ioBroker. Wie Antworte ich auf solche eine Leseanfrage?
- Funktioniert das Antworten auf eine Leseanfrage (kommend über den KNX-Bus) in einer bestimmten Lese/Schreibe Konstellation der Objekte automatisch? Wenn ja, wie und welche?
Muss ggf. eine weitere Intelligenz auf die Leseanfrage reagieren? Intelligenz bringe ich in das Ganze mit Node-Red. Allerdings sehe ich da keine Bewegung auf dem Objekt im Falle einer Leseanfrage. D.h. Konstrukte die ich baue, werden nicht angetriggert.
Andere ähnliche Fälle:
- Nachtsignal (ioBroker gibt das Signal)
Schaltzustand von Objekten wie Wifi-LED-Controller, die über einen KNX-Taster per ioBroker geschaltet werden (Zustand auch hier nur im ioBroker bekannt bzw. abfragbar). - Momentaner Workaround: Ich benutze einnen freien Schaltaktorplatz, um mit dem Sturmsignal diesen zu Schalten und über die Statusadresse das ganze zurückzuspielen. Das funktioniert ziemlich zuverlässig, aber ob das Sinn der Sache ist...
Vielen Dank im Vorraus für jeden Erfahrungsaustausch und schonmal guten Rutsch.
Viele Grüße, reco
Die beiden Objekte
Sturmalarm
{
"from": "system.adapter.knx.0",
"user": "system.user.admin",
"ts": 1589147866729,
"common": {
"name": "A_Z03_1 Sturmalarm",
"type": "boolean",
"role": "value",
"write": true,
"read": false,
"min": true,
"max": true
},
"native": {
"dpt": "DPT1.005",
"address": "0/4/10",
"addressRefId": "P-0145-0_GA-59",
"statusGARefId": "P-0145-0_GA-999",
"actGARefId": ""
},
"acl": {
"object": 1574,
"owner": "system.user.admin",
"ownerGroup": "system.group.administrator",
"state": 1574
},
"_id": "knx.0.Neue_Hauptgruppe.Neue_Mittelgruppe.A_Z03_1_Sturmalarm",
"type": "state"
}
Sturmalarm Status
{
"from": "system.adapter.knx.0",
"user": "system.user.admin",
"ts": 1589147866729,
"common": {
"name": "A_Z03_1 Sturmalarm Status",
"type": "boolean",
"role": "value",
"read": true,
"write": false,
"min": true,
"max": true
},
"native": {
"dpt": "DPT1.005",
"address": "0/4/12",
"addressRefId": "P-0145-0_GA-999",
"statusGARefId": "",
"actGARefId": ""
},
"acl": {
"object": 1638,
"owner": "system.user.admin",
"ownerGroup": "system.group.administrator",
"state": 1638
},
"_id": "knx.0.Neue_Hauptgruppe.Neue_Mittelgruppe.A_Z03_1_Sturmalarm_Status",
"type": "state"
}