Also, früher... hat man entweder einen Schalter gehabt (Ich nenne es mal Normalschaltung), oder zwei (Wechselschaltung) oder mehr als zwei (Kreuzschaltung). Die Bezeichnung rührt von der Art der Verschaltung. Bei der Wechselschaltung wird der "mittlere" Schalter einer Kreuzschaltung durch zwei Drähte ersetzt

Ich verlinke hier mal in die Wikipedia:
https://de.wikipedia.org/wiki/Kreuzschaltung und insbesondere auf das dort verwendete Schaubild mit allen möglichen Zuständen, das ist wirklich schön und anschaulich. Man kann bei der Kreuzschaltung "beliebig" viele Kreuzschalter zusätzlich einbauen, die Enden der Schalterkette sind aber immer Wechselschalter. "beliebig" stimmt natürlich nicht, da jeder Schalter einen Innenwiderstand hat, deshalb wird man ab einer bestimmten Anzahl eher zu einem Stromstoßrelais greifen.
Die Kreuzschaltung ist aber auch so eher ungewöhnlich, meist verbaut man stattdessen direkt ein Stromstoßrelais, welches also zwei stabile Schaltstellungen besitzt, zwischen denen jeweils per Stromstoß hin- und hergeschaltet wird.
Was Du über Homematic realisiert hast, ist also hoffentlich(!) keine Kreuzschaltung (an jeder Schaltstelle ein Aktor), sondern eben die indirekte Steuerung eines Stromkreises durch mehrere Taster (nicht Schalter). In dem Moment, wo Du eine der beteiligten Tasten drückst, wird das Relais umgeschaltet. Wobei Du mutmaßlich Tasterpaare hast, die übereinander angeordnet sind. Dabei sind die Taster so konfiguriert, dass der obere Taster immer ON sendet, während der untere Taster immer OFF sendet. Kann man so machen, ist halt Platzverschwendung.
Wie dem auch sei, es ist ja nun egal von welcher Stelle aus Du das Licht schaltest, also ist es auch uninteressant, welcher der Schalter betätigt wurde.
openHAB will keinem Schalter befehlen, sondern einem Aktor.
openHAB will nicht die Schaltstellung eines Wandtasters sehen, sondern den Schaltzustand des Aktors.
Hoggle hat geschrieben: ↑21. Jul 2023 14:50
Wenn per Rule auf einen Schaltvorgang reagiert werden soll, dann wird der Zwischenstecker abgefragt und nicht der Status des Schalter?!?
Genau!
Wobei "abgefragt" ja nicht mal stimmt. Du befiehlst über Homematic Licht ON -> Der Aktor schaltet das Licht ein -> der Aktor meldet den Zustand "Licht ON" -> openHAB empfängt die Statusmeldung und sendet sie an das passende Item.
Umgekehrt: openHAB sendet den Befehl OFF -> der Channel sendet den Befehl OFF an den Aktor -> der Aktor schaltet das Licht OFF -> der Aktor meldet "Licht OFF" -> openHAB empfängt die Statusmeldung und sendet sie an das Item.
So (und keinesfalls anders) wird das konfiguriert.
Schalter interessieren nicht. Es sei denn, man möchte mit dem Homematic Taster ZWave steuern, dann natürlich...
Vergiss also in openHAB die Schalter, so Du sie nicht für spezielle Funktionen brauchst.
In Homematic wirst Du aber jedem Schalter einen eigenen Namen geben wollen, damit Du im Falle eines Falles immer eine eindeutige Zuordnung hast - kann ja sein, dass Du mal einen Schalter austauschen musst, oder eine andere Funktion programmieren willst (das ist der Witz an Bussystemen, dass man recht einfach weitreichende Änderungen vornehmen kann). Wie Du die Schalter benennst, ist aber egal, das sind Homematic-interne Namen, in openHAB interessieren Dich nur die Aktoren (es sei denn ZWave...) und dort auch nur die Funktionen, die Du wirklich abbilden willst. Ich meine mich an HEX-Werte zu erinnern (also [0-9A-F], nicht Klartext Namen aus der Homematic Oberfläche, aber vielleicht liege ich da auch falsch
Denke daran, in openHAB gibt es ein Item pro Kanal. Schaltaktor -> Switch Item. Das heißt so, weil da etwas geschaltet wird, nicht, weil es ein Schalter wäre. Dimmer -> Dimmer Item. Eines, nicht mehrere. Ein Dimmer Item kann mit den Befehlen ON/OFF ein- und ausgeschaltet werden, mit INCREASE/DECREASE kann man das Licht heller/dunkler stellen (relatives Dimmen) und mit den Zahlen 0 - 100 kann direkt eine exakte Helligkeit ausgewählt werden. Je nach Konfiguration des Dimmers wird diese Helligkeit dann unmittelbar angesteuert oder über eine Ramp-Zeit weich angesteuert. Der Dimm-Aktor meldet im Gegenzug die aktuelle Helligkeit an openHAB, welche openHAB dann auch darstellt.
Hoggle hat geschrieben: ↑21. Jul 2023 14:50
Die letzten 2 Abschnitte verstehe ich leider nicht. Wenn ich die Labels der einzelnen Items nicht genauer bezeichne, also das Label "State" bei allen Things nicht mit einer genaueren Gerätebezeichnung ergänze, also z. B.: "EZ_Licht_State", dann stehen in der Items-Übersicht nachher 50, oder mehr Items mit der Bezeichnung "State". Ist das so gewollt?
Mööp, Achtung! Bitte nicht Channel und Item miteinander vermischen! Die Label der Channel sind jeweils gleich (natürlich kannst Du da auch einen Bezug zur echten Senke herstellen, also z.B. "Küchenlicht Schalten", aber wenn es sich um ein 1-Kanal-Thing handelt, ist das unnötig, denn "Küchenlicht" steht schon im Thing Label, es ist also hinreichend im Channel "Schalten" zu schreiben, um eindeutig zuordnen zu können, was da passiert.
Das Itemlabel hat nicht zwingend etwas mit dem Channel Label zu tun, es ist nur so, dass openHAB beim automatischen Generieren von Items automatisch die Label von Thing und Channel verwendet, um daraus Itemnamen zu bilden und deren Label zu befüllen. Was im Itemlabel steht, ist aber komplett egal, da kannst Du alles rein schreiben, auch "Konstantinopel" oder "Hugendubel", Du musst nur wissen, dass Konstantinopel in Wirklichkeit das Item ist, welches die Saturnrakete startet, während "Hugendubel" das Internet der gesamten amerikanischen Westküste abstürzen lässt.
Hoggle hat geschrieben: ↑21. Jul 2023 14:50
Ich muß mich wirklich mal hinsetzen und überlegen, was überhaupt alles in OH rein muß. Z. B. die 3 Schalter, die die Esszimmerlampe schalten und direkt in der HM-Zentrale verknüpft sind, sind doch eigentlich nicht wichtig, ausser ich möchte statistisch erfassen, welcher Schalter am meisten gedrückt wird (Was natürlich äusserst wichtig für mein Leben ist

)
Eben. Es sollte gewöhnlich keine Rolle spielen, welcher Taster gedrückt wurde - in knx z.B. steht diese Information gewöhnlich gar nicht zur Verfügung, es sei denn, man parametriert das entsprechend. Aber wozu?