Der erste "Fehler" ist schon, dass Du überhaupt alle Channel auflistest, bis auf (weil Du diese Channel nicht mit Items verknüpfen kannst) die beiden wichtigsten Channel einfach unterschlägst
Erster Screenshot. dritter und neunter Channel Taster 1#BUTTON und 2#BUTTON. Dies sind die Trigger Channel, welche eben nicht mit einem Item verlinkt werden können, sondern direkt in Rules verwendet werden (wie in meinem Beispiel gezeigt)
Falls diese Channel übrigens keine Daten liefern, dann liegt das daran, dass sie mindestens einen "Empfänger" brauchen, sie müssen also in Homematic mit einem (notfalls virtuellen) Punkt verknüpft sein (ist in der Doku in openHAB erwähnt).
Wie wird nun der Dimmer angesteuert... Ich habe ja darauf hingewiesen, dass ich von Homematic erst mal keine Ahnung habe...
Aber Homematic ist ja grundsätzlich in der Lage, über die CCU Geräte "intern" miteinander zu verknüpfen. Dass das mit Deinen Geräten jetzt so nicht geht, weil sie unterschiedliche Protokolle verwenden, ist erst mal unerheblich.
Wie sähe eine Verknüpfung in der Homematic ccu aus (also auf welchen Befehl würdest Du den langen Tastendruck verbinden)?
Eventuell verbirgt sich der Befehl auch hinter den beiden Tastern, die ja Bestandteil des Dimmers sind. Dann wäre ein Befehl EZLichtK1PRESSLONGSTART der Befehl, mit dem Aufdimmen zu beginnen und ein Befehl EZLichtK1PRESSLONGRELEASE, diesen Vorgang zu beenden. Für die 2. Taste wäre es entsprechend die Gegenrichtung. Gewöhnlich wird man die Tasten ja immer in Verbindung mit dem Dimmer verwenden, also zur lokalen Bedienung.
Falls Du überhaupt keine Zentrale nutzt (die Geräte können ja wohl auch untereinander kommunizieren, nur halt nicht, wenn sie unterschiedliche Medien und/oder Protokolle verwenden), schau mal nach RaspberryMatic, damit sollte man eine CCU3 ersetzen können.
Falls das alles nicht funktioniert, steht immer noch die letzte Variante zur Verfügung, openHAB sendet absolute Helligkeitswerte, und zwar zyklisch, beginnend mit dem Langen Drücken auf eine Taste, und dann aufsteigend (bzw. absteigend) bis die Taste wieder losgelassen wird.
Wenn der Dimmvorgang über zwei Taster gesteuert werden soll:
Code: Alles auswählen
rule "Taster 1"
when
Channel 'homematic:HM-RC-19-B:ccu:KEQ0012345:1#BUTTON' triggered
then
var nBright = meinDimmer.state as Number
nBright += 5 // in 5-Prozent-Schritten, bei Bedarf anpassen
if(nBright > 100) nBright = 100
switch(receivedEvent) {
case "SHORT_PRESSED" : {
meinDimmer.sendCommand(ON)
}
case "LONG_PRESSED" : {
meinDimmer.sendCommand(nBright)
}
case "LONG_REPEATED" : {
meinDimmer.sendCommand(nBright)
}
case "LONG_RELEASED" : {
}
default: logWarn("taster","Taster 1: Da ist was faul. Empfangenes Event ({}) ungültig",receivedEvent)
}
end
rule "Taster 2"
when
Channel 'homematic:HM-RC-19-B:ccu:KEQ0012345:2#BUTTON' triggered
then
var nBright = meinDimmer.state as Number
nBright -= 5
if(nBright < 0) nBright = 0
switch(receivedEvent) {
case "SHORT_PRESSED" : {
meinDimmer.sendCommand(OFF)
}
case "LONG_PRESSED" : {
meinDimmer.sendCommand(nBright)
}
case "LONG_REPEATED" : {
meinDimmer.sendCommand(nBright)
}
case "LONG_RELEASED" : {
}
default: logWarn("taster","Taster 1: Da ist was faul. Empfangenes Event ({}) ungültig",receivedEvent)
}
end
Die eine Rule kümmert sich um den einen Taster, die andere um den anderen Taster.
Bei der einen Rule wird bei kurzem Druck eingeschaltet, bei langem Druck die Helligkeit in 5-Prozent-Stufen erhöht, bei der zweiten Rule ist es genau umgekehrt.
Wenn der Channel nicht funktioniert, welche Events empfängst Du beim Drücken des Tasters (kurz, lang start, loslassen, getrennt für beide Tasten)