Wenn dies dein erster Besuch hier ist, lies bitte zuerst die Hilfe - Häufig gestellte Fragen durch. Du musst dich vermutlich registrieren, bevor du Beiträge verfassen kannst. Klicke oben auf 'Registrieren', um den Registrierungsprozess zu starten. Du kannst auch jetzt schon Beiträge lesen. Suche dir einfach das Forum aus, das dich am meisten interessiert.
Vielen Dank für den Hinweis! Mit der RGB-Zuordnung klappt es nun.
ich hoffe mal, dass bald auch der Datentyp für RGBW implementiert wird, dann kann ich auch den Weißkanal nutzen.
Das geht einfach über das Verbinden der GA. Der Aktor bietet HSV und RGB Objekte. Einfach mit dem RGB Objekt und Statusobjekt verbinden, dann klappt es.
Ich habe auch den MDT LED Controller wie auch viele andere im Thread. Evtl. hat jemand einen Vorschlag, wo bei mir der Fehler ist.
Die Farbe kann ich auch ändern. Allerdings wird nicht die gewählte Farbe geschaltet.
Gibt es denn überhaupt eine Lösung? Anbei meine Zuweisung der GA im Anhang und der Code in Things:
Hallo,
bitte postet mal Screenshots eurer Konfiguration der MDT Dimmer in ETS.
Ich habe meine Lichtbänder immer noch nicht im Griff - Farbe und Dimmen geht nur über die MDT Glastaster.
Über openhab geht es immer noch nicht bei mir.
Auf diese Art und Weise kann ich wie gesagt jeden Kanal eigens ansteuern, das funktioniert.
Jetzt die Frage wie bekomme ich das mit dem Colorpicker hin.
Ich hab in der Sitemap eingefügt:
Colorpicker item=WZ_Decke_RGB
Damit seh ich mal den Farbwähler.
In den items hab ich eingefügt
Color WZ_Decke_RGB "RGB Light" { channel="knx:device:bridge:dali:WZ_Decke_RGB" }
Hier aus dem Forum hab ich die Rule entnommen und angepasst:
Code:
var HSBType hsbValue
var String redValue
var String greenValue
var String blueValue
// Any change in value of the RGB Colorpicker item fires this rule.
// The HSB value of the item is determined and split to percentage values for red, green and blue which then get sent to the individual KNX items LedR, LedG and LedB.
rule "Set RGBw values WZ_Decke_RGB"
when
Item WZ_Decke_RGB changed
then
hsbValue = WZ_Decke_RGB.state as HSBType
redValue = hsbValue.red.intValue.toString
greenValue = hsbValue.green.intValue.toString
blueValue = hsbValue.blue.intValue.toString
sendCommand( WZ_Decke_R, redValue )
sendCommand( WZ_Decke_G, greenValue )
sendCommand( WZ_Decke_B, blueValue )
end
Was ich jetzt bei den things machen muss, find ich aber nicht raus.
Oder hab ich den Fehler schon wo vorher?
Color WZ_Decke_RGB "RGB Light" { channel="knx:device:bridge:dali:WZ_Decke_RGB" }
auf
Code:
Color WZ_Decke_RGB "RGB Light" <rgb>
Denn du hast da kein Channel im Hintergrund. Das macht dann die Rule wenn sie vom Item getriggert wird und setzt das dann in die 3 INT values um...
Es gibt aber auch neuere RGB controller die den colorpicker direkt umsetzten können falls du so ein channel in deinem DALI Aktor hast. Dann kannst du direct mit DPT232.600 evtl auch lösen. Dann braucht du keine Rule so wie ich...
Das Color Item ist auf knx-Seite mit nichts zu verbinden, es ist ein Proxy Item. Das heißt, Du lässt jegliche Verlinkung zu einem Channel weg. Die Rule setzt ja den Input seitens der UI auf die einzelnen Dimmer Kanäle um.
Es wäre besser, nur die Position Rückmeldung mit dem Channel zu verknüpfen und nicht die Switch Rückmeldung, sonst bekommt der Channel zwei Rückmeldungen, die sich eventuell widersprechen (z.B. Einschalten eines Dimmers auf 50% -> Switch => ON, aber Position => 50%). Für den Zustand des Dimmers ist die Information ON/OFF irrelevant, da der DImmer einen Status 0 - 100 liefert.
Weiterhin sollte es unnötig sein, nach String zu wandeln. Gibt es einen besonderen Grund, warum Du die Variablen global definiert hast? Gewöhnlich sollte es so reichen:
Code:
// Any change in value of the RGB Colorpicker item fires this rule.
// The HSB value of the item is determined and split to percentage values for red, green and blue which then get sent to the individual KNX items LedR, LedG and LedB.
rule "Set RGBw values WZ_Decke_RGB"
when
Item WZ_Decke_RGB changed
then
if(!(WZ_Decke_RGB.state instanceof HSBType))
return;
val HSBType hsbValue = WZ_Decke_RGB.state as HSBType
val Number redValue = hsbValue.red.intValue
val Number greenValue = hsbValue.green.intValue
val Number blueValue = hsbValue.blue.intValue
WZ_Decke_R.sendCommand(redValue)
WZ_Decke_R.sendCommand(greenValue)
WZ_Decke_R.sendCommand(blueValue)
end
Die ersten beiden Zeilen if(!(...)) return; sichern ab, dass keine Fehlermeldung kommt, falls das Item mal einen anderen Status als HSBType enthalten sollte (z.B. NULL oder UNDEV)
Ansonsten sollte hier, wie erwähnt, die lokale Definition als HSBType bzw. Number reichen.
Die Methode Item.sendCommand(Value) ist grundsätzlich der Action sendCommand(Item as String, Value as String) vorzuziehen.
Ich danke euch recht herzlich, mit euren Infos hab ich es hin bekommen.
Grundsätzlich hab ich alles mit meinem eibPort visualisiert, aber wollt mich mal etwas näher mit Openhab beschäftigen.
Den einzigen Grund den ich hatte, um es so zu machen war - ich hab keine Ahnung, und das war das Ergebnis der Google Suche :-)
Wir verarbeiten personenbezogene Daten über die Nutzer unserer Website mithilfe von Cookies und anderen Technologien, um unsere Dienste bereitzustellen. Weitere Informationen findest Du in unserer Datenschutzerklärung.
Indem Du unten auf "ICH stimme zu" klickst, stimmst Du unserer Datenschutzerklärung und unseren persönlichen Datenverarbeitungs- und Cookie-Praktiken zu, wie darin beschrieben. Du erkennst außerdem an, dass dieses Forum möglicherweise außerhalb Deines Landes gehostet wird und bist damit einverstanden, dass Deine Daten in dem Land, in dem dieses Forum gehostet wird, gesammelt, gespeichert und verarbeitet werden.
Kommentar