Hallo zusammen,
ich habe bei mir ein Velux Dachfenster, das ich über einen MDT Glastaster steuern möchte. Das Velux Rollo wird über ein KLF 200 angesteuert. Die Steuerung über openhab funktioniert ohne Probleme. Um das nun über den KNX Taster zu steuern, bin ich folgendermaßen vorgegangen:
Gruppenadressen:
10/1/13: Rollo auf / ab
10/2/13: Rollo stop
10/3/13: Rollo Rückmeldung aktuelle Position
10/5/13: Rollo absolute Position
Im Glastaster habe ich eine Zwei-Tasten-Funktion für dieses Rollo wie auch für alle "normalen" KNX Rollos angelegt und mit den genannten Gruppenadressen verbunden.
Things:
Items:
Rules
Die Regel wird bei Tastendruck ausgelöst. Das Problem ist, receivedCommand ist immer "MOVE", egal ob nach oben oder unten gedrückt wird. Natürlich könnte die Regel umständlich umgebaut werden, um trotzdem basierend auf dem aktuellen Zustand das richtige Kommando zu senden, aber eigentlich müsste doch die Information ob hoch oder runter gedrückt wurde vorliegen. Hat da jemand eine Idee?
Viele Grüße
Pfrosch
ich habe bei mir ein Velux Dachfenster, das ich über einen MDT Glastaster steuern möchte. Das Velux Rollo wird über ein KLF 200 angesteuert. Die Steuerung über openhab funktioniert ohne Probleme. Um das nun über den KNX Taster zu steuern, bin ich folgendermaßen vorgegangen:
Gruppenadressen:
10/1/13: Rollo auf / ab
10/2/13: Rollo stop
10/3/13: Rollo Rückmeldung aktuelle Position
10/5/13: Rollo absolute Position
Im Glastaster habe ich eine Zwei-Tasten-Funktion für dieses Rollo wie auch für alle "normalen" KNX Rollos angelegt und mit den genannten Gruppenadressen verbunden.
Things:
Code:
Type rollershutter-control : rolloOGBadFenster "Rollo Kinderbad Fenster" [upDown="10/1/13", stopMove="10/2/13", position="10/5/13"]
Code:
Rollershutter Rollo_OG_Kinderbad_Fenster "Rollo Kinderbad Fenster [%d %%]" (OG_Bad, gRollo) {channel="knx:device:bridge:generic:rolloOGBadFenster", autoupdate="true"} Rollershutter Velux_OG_Bad "Velux OG Bad [%d]" (OG_Bad, gRollo) { velux="thing=actuator;channel=serial#<XXX>" }
Code:
rule "Kinderbad_Fenster" when Item Rollo_OG_Kinderbad_Fenster received command then logInfo("rules", "Rollo_OG_Kinderbad_Fenster received command") logInfo("rules", Rollo_OG_Kinderbad_Fenster.state.toString) logInfo("rules", "receivedCommand: " + receivedCommand.toString) switch(receivedCommand) { case UP : { logInfo("rules", "Rollo_OG_Kinderbad_Fenster received command UP") Velux_OG_Bad.sendCommand(UP) } case DOWN : { logInfo("rules", "Rollo_OG_Kinderbad_Fenster received command DOWN") Velux_OG_Bad.sendCommand(DOWN) } } end
Viele Grüße
Pfrosch
Kommentar