Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Tradfri RGB über deconz und Yahka, Farbwahl nicht möglich

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Tradfri RGB über deconz und Yahka, Farbwahl nicht möglich

    This topic has been deleted. Only users with topic management privileges can see it.
    • Asgothian
      Asgothian Developer @el_malto last edited by Asgothian

      @el_malto sagte in Tradfri RGB über deconz und Yahka, Farbwahl nicht möglich:

      Issue

      Das Problem mit der Farbtemperatur lässt sich nicht so ohne weiteres lösen. Lt. der aktuellen Version des Zigbee-Shepherds ist die Einstellung der Farbtemperatur unterstützt, aber die Fehlermeldung deutet darauf hin das das nicht so ohne weiteres geht. Um da etwas zu tun bräuchte ich eine Lampe.

      Zum Thema RGB sieht es besser aus. Ich nutze selber dazu die Bibliothek color-convert (von Qix- auf GitHub). Yahka unterstützt bei der Farbe nur das HSL Modell, der Datenpunkt bei der Ikea Lampe ist RGB als Hex wert wie im Web (rrggbb). Der da zu nutzende Weg ist einfach: Du brauchst 2 Datenpunkte (hue, saturation ), die du mit einen Script und der color-convert Bibliothek dazu benutzt die RGB codes zu berechnen. der 3. Datenpunkt im HSL Farbmodell ist brightness, wobei du darauf achten musst das das HSL Farbmodel folgende Wertebereich benötigt:

      • hue: 0..360
      • sat: 0..100
      • lightness: 0..100

      Falls der Datenpunkt "brightness" zwischen 0 und 255 angesteuert wird musst du den bei der Verwendung im Script entsprechend anpassen.

      A.

      E 1 Reply Last reply Reply Quote 1
      • E
        el_malto @Asgothian last edited by

        @Asgothian sagte in Tradfri RGB über deconz und Yahka, Farbwahl nicht möglich:

        @el_malto sagte in Tradfri RGB über deconz und Yahka, Farbwahl nicht möglich:

        Issue

        Das Problem mit der Farbtemperatur lässt sich nicht so ohne weiteres lösen. Lt. der aktuellen Version des Zigbee-Shepherds ist die Einstellung der Farbtemperatur unterstützt, aber die Fehlermeldung deutet darauf hin das das nicht so ohne weiteres geht. Um da etwas zu tun bräuchte ich eine Lampe.

        Hmm, der User im Foum hat ja geschriben, dass es mit einer älteren Version ml funktioniert hat.

        PS: Mit einer alten Version hat es schon mal funktioniert, allerdings hat da die RGB Farbe nicht funktioniert.
        

        Zum Thema RGB sieht es besser aus. Ich nutze selber dazu die Bibliothek color-convert (von Qix- auf GitHub). Yahka unterstützt bei der Farbe nur das HSL Modell, der Datenpunkt bei der Ikea Lampe ist RGB als Hex wert wie im Web (rrggbb). Der da zu nutzende Weg ist einfach: Du brauchst 2 Datenpunkte (hue, saturation ), die du mit einen Script und der color-convert Bibliothek dazu benutzt die RGB codes zu berechnen. der 3. Datenpunkt im HSL Farbmodell ist brightness, wobei du darauf achten musst das das HSL Farbmodel folgende Wertebereich benötigt:

        • hue: 0..360
        • sat: 0..100
        • lightness: 0..00

        Falls der Datenpunkt "brightness" zwischen 0 und 255 angesteuert wird musst du den bei der Verwendung im Script entsprechend anpassen.

        A.

        Kannst du mir da mit dem JS Skript helfen? Ich kann leider nur Blockly.

        Asgothian 1 Reply Last reply Reply Quote 0
        • Asgothian
          Asgothian Developer @el_malto last edited by Asgothian

          @el_malto sagte in Tradfri RGB über deconz und Yahka, Farbwahl nicht möglich:

          @Asgothian sagte in Tradfri RGB über deconz und Yahka, Farbwahl nicht möglich:

          @el_malto sagte in Tradfri RGB über deconz und Yahka, Farbwahl nicht möglich:

          Issue

          Das Problem mit der Farbtemperatur lässt sich nicht so ohne weiteres lösen. Lt. der aktuellen Version des Zigbee-Shepherds ist die Einstellung der Farbtemperatur unterstützt, aber die Fehlermeldung deutet darauf hin das das nicht so ohne weiteres geht. Um da etwas zu tun bräuchte ich eine Lampe.

          Hmm, der User im Foum hat ja geschriben, dass es mit einer älteren Version ml funktioniert hat.

          PS: Mit einer alten Version hat es schon mal funktioniert, allerdings hat da die RGB Farbe nicht funktioniert.
          

          Das Problem ist das nicht mehr heraus zu bekommen ist mit welcher Version des Adapters bzw. des Zigbee-Shepherd das mal funktioniert hat. Und ohne eine Möglichkeit das zu testen mag ich da nicht dran Gehen.

          Zum Thema RGB sieht es besser aus. Ich nutze selber dazu die Bibliothek color-convert (von Qix- auf GitHub). Yahka unterstützt bei der Farbe nur das HSL Modell, der Datenpunkt bei der Ikea Lampe ist RGB als Hex wert wie im Web (rrggbb). Der da zu nutzende Weg ist einfach: Du brauchst 2 Datenpunkte (hue, saturation ), die du mit einen Script und der color-convert Bibliothek dazu benutzt die RGB codes zu berechnen. der 3. Datenpunkt im HSL Farbmodell ist brightness, wobei du darauf achten musst das das HSL Farbmodel folgende Wertebereich benötigt:

          • hue: 0..360
          • sat: 0..100
          • lightness: 0..100

          Falls der Datenpunkt "brightness" zwischen 0 und 255 angesteuert wird musst du den bei der Verwendung im Script entsprechend anpassen.

          A.

          Kannst du mir da mit dem JS Skript helfen? Ich kann leider nur Blockly.

          Kann ich machen. 1. Frage: ist brightness zwischen 0 und 255 nutzbar oder zwischen 0 und 100 ?

          Ansonsten musst du zunächst folgendes Tun :

          im JS adapter die Funktion für color-convert hinzufügen :

          Screen Shot 2019-09-22 at 22.03.15 .png (Da wo bei mir Add Module steht einfach "color-convert" eintragen)

          Dann musst du dir 2 Datenpunkte anlegen. Ich mache so etwas immer unter javascript.0

          Für das Beispiel unten sind das javascript.0.farbumsetzung.hue und javascript.0.farbumsetzung.sat.

          Diese bindest Du bei Yahka als Datenpunkte für hue und sat ein.

          Das Script sollte dann so aussehen:

          var cc = require('color-convert');
          var valchanged = null;
          
          function updateLightColor()
          {
              let h = getState('javascript.0.farbumsetzung.sat').val;
              let s = getState('javascript.0.farbumsetzung.sat').val;
              let l = getState('lampObject.brightness').val
          
              let rgb_numeric = cc.hsl.rgb(h, s*100, l);
              let rgb_text = cc.rgb.hex(rgb_numeric);
              setState('LampObj.color', rgb_text);
          }
          
          on ({ id:'javascript.0.farbumsetzung.sat', change:'ne'}, function() {if (!valchanged) valchanged = setTimeout( updateLightColor, 100); });
          on ({ id:'javascript.0.farbumsetzung.hue', change:'ne'}, function() {if (!valchanged) valchanged = setTimeout( updateLightColor, 100); });
          

          Wichtig ist das sich die Farbe nur dann ändert, wenn du hue oder sat veränderst. Wenn du nur mit der Helligkeit spielst bleibt wird der Farb-Wert nicht angepasst - das sollte die Lampe selber tun.

          A.

          E L 2 Replies Last reply Reply Quote 1
          • E
            el_malto @Asgothian last edited by

            @Asgothian sagte in Tradfri RGB über deconz und Yahka, Farbwahl nicht möglich:

            Kann ich machen. 1. Frage: ist brightness zwischen 0 und 255 nutzbar oder zwischen 0 und 100 ?

            0-100

            Vielen Dank schon mal für die Hilfe.

            Asgothian 1 Reply Last reply Reply Quote 0
            • Asgothian
              Asgothian Developer @el_malto last edited by

              @el_malto Siehe oberer Post - ich hab den einfach editiert nachdem ich die Frage gestellt hatte.

              E 1 Reply Last reply Reply Quote 1
              • E
                el_malto @Asgothian last edited by el_malto

                @Asgothian habe dein Skript mal ausprobier. Klappt leider nicht ganz. Den ersten Farbwechsel macht die Lampe, der ist aber von der Farbe falsch. Danach macht die Lampe nichts mehr.

                var cc = require('color-convert');
                var valchanged = null;
                
                function updateLightColor()
                {
                    let h = getState('javascript.0.meineDatenpunkte.DL_SZ_farbumsetzung.sat').val;
                    let s = getState('javascript.0.meineDatenpunkte.DL_SZ_farbumsetzung.sat').val;
                    let l = getState('zigbee.0.14b457fffe43566d.brightness').val
                
                    let rgb_numeric = cc.hsl.rgb(h, s*100, l);
                    let rgb_text = cc.rgb.hex(rgb_numeric);
                    setState('zigbee.0.14b457fffe43566d.color', rgb_text);
                }
                
                on ({ id:'javascript.0.meineDatenpunkte.DL_SZ_farbumsetzung.sat', change:'ne'}, function() {if (!valchanged) valchanged = setTimeout( updateLightColor, 100); });
                on ({ id:'javascript.0.meineDatenpunkte.DL_SZ_farbumsetzung.hue', change:'ne'}, function() {if (!valchanged) valchanged = setTimeout( updateLightColor, 100); });
                

                Ist das richtig, dass in Zeile 6 und 7 immer der „hue“ Datenpunkt stehen muss? Hatte das schon mal getauscht mit „sat“, hat aber auch nicht funktioniert.
                DP.JPG
                1.JPG
                Muss ich bei „Conversation“ noch was angeben?

                Asgothian 1 Reply Last reply Reply Quote 0
                • Asgothian
                  Asgothian Developer @el_malto last edited by Asgothian

                  @el_malto Ja, das ist ein Tippfehler. Eine Umrechnung brauchst du nicht - der Wertebereich ist 0-100.

                  Was genau hat nicht funktioniert, i.e. was war das Ergebnis in den Objekten ? i.e. Was fuer einen Hex wert liefert die Funktion an die Lampe ?

                  A.

                  E 1 Reply Last reply Reply Quote 1
                  • E
                    el_malto @Asgothian last edited by

                    @Asgothian sagte in Tradfri RGB über deconz und Yahka, Farbwahl nicht möglich:

                    @el_malto Ja, das ist ein Tippfehler. Eine Umrechnung brauchst du nicht - der Wertebereich ist 0-100.

                    Wie muss es denn richtig heißen?

                    Was genau hat nicht funktioniert, i.e. was war das Ergebnis in den Objekten ?
                    i.e. Was fuer einen Hex wert liefert die Funktion an die Lampe ?
                    A.

                    Die neu angelegten Datenpunkte ändern sich immer wenn ich ein Farbe einstelle.
                    1.JPG
                    Der color Datepunkt ändert sich meistens nur nachdem ich die Lampe eingeschaltet habe und einen ersten Farbwechsel mache (aber dann auch mit einer falschen Farbe). Danach ändert sich der Datenpunkt nicht mehr. Die hue und sat Datenpunkte ändern sich aber immer.
                    2.JPG

                    Asgothian 2 Replies Last reply Reply Quote 0
                    • Asgothian
                      Asgothian Developer @el_malto last edited by

                      @el_malto schalte mal bitte das Script ab und prüfe in welchem Wertebereich der yahka Adapter den hue Wert anpasst. Soll ist 0-360. Wenn da andere Werte stehen musst du den h Wert im Script so umrechnen zwischen 0 und 360 bleibt.

                      I’m detail kann ich da erst heute Abend ran.

                      A.

                      E 1 Reply Last reply Reply Quote 1
                      • E
                        el_malto @Asgothian last edited by

                        @Asgothian sagte in Tradfri RGB über deconz und Yahka, Farbwahl nicht möglich:

                        @el_malto schalte mal bitte das Script ab und prüfe in welchem Wertebereich der yahka Adapter den hue Wert anpasst. Soll ist 0-360. Wenn da andere Werte stehen musst du den h Wert im Script so umrechnen zwischen 0 und 360 bleibt.

                        Das passt. Wenn ich am "farbigen Rad" in der Homekit App "drehe" gehen die Werte von 0-360.

                        @el_malto Ja, das ist ein Tippfehler. Eine Umrechnung brauchst du nicht - der Wertebereich ist 0-100.

                        Wie muss es denn richtig heißen?

                        Könntest du das nochmal beantworten?

                        Asgothian 1 Reply Last reply Reply Quote 0
                        • Asgothian
                          Asgothian Developer @el_malto last edited by

                          @el_malto

                          let h = getState('javascript.0.meineDatenpunkte.DL_SZ_farbumsetzung.sat').val;
                          

                          Wird zu

                          let h = getState('javascript.0.meineDatenpunkte.DL_SZ_farbumsetzung.hue').val;
                          

                          A.

                          E 1 Reply Last reply Reply Quote 1
                          • Asgothian
                            Asgothian Developer @el_malto last edited by

                            @el_malto sagte in Tradfri RGB über deconz und Yahka, Farbwahl nicht möglich:

                            Die neu angelegten Datenpunkte ändern sich immer wenn ich ein Farbe einstelle.
                            1.JPG
                            Der color Datepunkt ändert sich meistens nur nachdem ich die Lampe eingeschaltet

                            Wenn hue 0-360 ist, wie ist dann der oben stehende Screenshot entstanden ?

                            A.

                            1 Reply Last reply Reply Quote 1
                            • E
                              el_malto @Asgothian last edited by

                              @Asgothian sagte in Tradfri RGB über deconz und Yahka, Farbwahl nicht möglich:

                              let h = getState('javascript.0.meineDatenpunkte.DL_SZ_farbumsetzung.sat').val;
                              

                              Wird zu

                              let h = getState('javascript.0.meineDatenpunkte.DL_SZ_farbumsetzung.hue').val;
                              

                              Erledigt.

                              @Asgothian sagte in Tradfri RGB über deconz und Yahka, Farbwahl nicht möglich:

                              Wenn hue 0-360 ist, wie ist dann der oben stehende Screenshot entstanden ?

                              Das frage ich mich auch gerade. Kann es so jetzt nicht mehr reprodzieren. Jetzt passt es auf jeden fall.
                              Hier noch mal das aktuelle Skript.

                              var cc = require('color-convert');
                              var valchanged = null;
                              
                              function updateLightColor()
                              {
                                  let h = getState('javascript.0.meineDatenpunkte.DL_SZ_farbumsetzung.hue').val;
                                  let s = getState('javascript.0.meineDatenpunkte.DL_SZ_farbumsetzung.sat').val;
                                  let l = getState('zigbee.0.14b457fffe43566d.brightness').val
                              
                                  let rgb_numeric = cc.hsl.rgb(h, s*100, l);
                                  let rgb_text = cc.rgb.hex(rgb_numeric);
                                  setState('zigbee.0.14b457fffe43566d.color', rgb_text);
                              }
                              
                              on ({ id:'javascript.0.meineDatenpunkte.DL_SZ_farbumsetzung.sat', change:'ne'}, function() {if (!valchanged) valchanged = setTimeout( updateLightColor, 100); });
                              on ({ id:'javascript.0.meineDatenpunkte.DL_SZ_farbumsetzung.hue', change:'ne'}, function() {if (!valchanged) valchanged = setTimeout( updateLightColor, 100); });
                              

                              Jetzt stellt stellt sich nur noch die Frage, warum das Skript den color Datenpunkt nicht aktualisiert wenn man die Farbe ändert...

                              Asgothian 1 Reply Last reply Reply Quote 0
                              • Asgothian
                                Asgothian Developer @el_malto last edited by Asgothian

                                @el_malto gibt Fehlermeldungen im log ?
                                Füge bitte den folgenden Text vor dem “set state” hinzu und schau was im log auftaucht.

                                log(“convert hsl to rgb “ + JSON.stringify(rgb_numreic) + “(“ + JSON.stringify(rgb_text) + “)” );
                                
                                

                                A.

                                E 1 Reply Last reply Reply Quote 1
                                • E
                                  el_malto @Asgothian last edited by el_malto

                                  @Asgothian sagte in Tradfri RGB über deconz und Yahka, Farbwahl nicht möglich:

                                  @el_malto gibt Fehlermeldungen im log ?

                                  Nein, im Log war nichts zu sehen.

                                  Füge bitte den folgenden Text vor dem “set state” hinzu und schau was im log auftaucht.

                                  log(“convert hsl to rgb “ + JSON.stringify(rgb_numreic) + “(“ + JSON.stringify(rgb_text) + “)” );
                                  
                                  

                                  A.

                                  Skript neu:

                                  var cc = require('color-convert');
                                  var valchanged = null;
                                  
                                  function updateLightColor()
                                  {
                                      let h = getState('javascript.0.meineDatenpunkte.DL_SZ_farbumsetzung.hue').val;
                                      let s = getState('javascript.0.meineDatenpunkte.DL_SZ_farbumsetzung.sat').val;
                                      let l = getState('zigbee.0.14b457fffe43566d.brightness').val
                                  
                                      let rgb_numeric = cc.hsl.rgb(h, s*100, l);
                                      let rgb_text = cc.rgb.hex(rgb_numeric);
                                      log("convert hsl to rgb " + JSON.stringify(rgb_numreic) + "(" + JSON.stringify(rgb_text) + ")" );
                                      setState('zigbee.0.14b457fffe43566d.color', rgb_text);
                                  }
                                  
                                  on ({ id:'javascript.0.meineDatenpunkte.DL_SZ_farbumsetzung.sat', change:'ne'}, function() {if (!valchanged) valchanged = setTimeout( updateLightColor, 100); });
                                  on ({ id:'javascript.0.meineDatenpunkte.DL_SZ_farbumsetzung.hue', change:'ne'}, function() {if (!valchanged) valchanged = setTimeout( updateLightColor, 100); });
                                  

                                  So sieht der Log nun aus:

                                  javascript.0	2019-09-23 11:28:05.936	error	at Timer.listOnTimeout (timers.js:290:5)
                                  javascript.0	2019-09-23 11:28:05.936	error	at tryOnTimeout (timers.js:323:5)
                                  javascript.0	2019-09-23 11:28:05.935	error	at ontimeout (timers.js:511:34)
                                  javascript.0	2019-09-23 11:28:05.935	error	at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1869:34)
                                  javascript.0	2019-09-23 11:28:05.935	error	at Object.updateLightColor (script.js.common.DL_SZ_farbumwandlung:12:48)
                                  javascript.0	2019-09-23 11:28:05.935	error	Error in callback: ReferenceError: rgb_numreic is not defined
                                  javascript.0	2019-09-23 11:27:38.491	info	script.js.common.DL_SZ_farbumwandlung: registered 2 subscriptions and 0 schedules
                                  javascript.0	2019-09-23 11:27:38.490	info	Start javascript script.js.common.DL_SZ_farbumwandlung
                                  javascript.0	2019-09-23 11:27:38.459	info	Stop script script.js.common.DL_SZ_farbumwandlung
                                  

                                  EDIT: War ein Tippfehler in deiner neuen Zeile.

                                  (rgb_numreic)
                                  

                                  Habe ich in

                                  (rgb_numeric)
                                  

                                  geändert.
                                  Neuer Log:

                                  javascript.0	2019-09-23 11:35:37.187	info	script.js.common.DL_SZ_farbumwandlung: convert hsl to rgb [255,255,255]("FFFFFF")
                                  javascript.0	2019-09-23 11:35:15.656	info	script.js.common.DL_SZ_farbumwandlung: registered 2 subscriptions and 0 schedules
                                  javascript.0	2019-09-23 11:35:15.656	info	Start javascript script.js.common.DL_SZ_farbumwandlung
                                  javascript.0	2019-09-23 11:35:15.620	info	Stop script script.js.common.DL_SZ_farbumwandlung
                                  

                                  Wie gesagt, bei der ersten Farbänderung nach dem die Lampe eingeschaltet wurde, wird die Farbe geändert (aber in einer falschen Farbe). Danach geht keine Farbänderung mehr.

                                  Asgothian 1 Reply Last reply Reply Quote 0
                                  • Asgothian
                                    Asgothian Developer @el_malto last edited by

                                    @el_malto keine Farbänderung an der Lampe, oder keine Änderung der hue/sat Werte ?
                                    Wenn due hue/sat Werte geaendert werden, wird dann im log noch etwas geschrieben (im gesamt log, nicht im js Adapter)

                                    A.

                                    E 2 Replies Last reply Reply Quote 1
                                    • E
                                      el_malto @Asgothian last edited by el_malto

                                      @Asgothian die hue/sat Werte ändern sich immer. Nur die Lampe ändert nach dem die eingeschaltet wurde und ich eine erste Farbänderung machen will die Farbe (also im color Datenpunkt wird der neue HEX Wert geschrieben, jedoch ist die Farbe falsch). Wenn ich dann ein weiteres mal die Farbe ändern will, wird kein neuer HEX Wert mehr im color Datenpunkt geschrieben (hue/sat ändert sich aber immer).

                                      1 Reply Last reply Reply Quote 0
                                      • E
                                        el_malto @Asgothian last edited by

                                        @Asgothian sagte in Tradfri RGB über deconz und Yahka, Farbwahl nicht möglich:

                                        Wenn due hue/sat Werte geaendert werden, wird dann im log noch etwas geschrieben (im gesamt log, nicht im js Adapter)

                                        A.

                                        Das ist der ganze Log vom ioBroker

                                        @el_malto sagte in Tradfri RGB über deconz und Yahka, Farbwahl nicht möglich:

                                        Neuer Log:

                                        javascript.0	2019-09-23 11:35:37.187	info	script.js.common.DL_SZ_farbumwandlung: convert hsl to rgb [255,255,255]("FFFFFF")
                                        javascript.0	2019-09-23 11:35:15.656	info	script.js.common.DL_SZ_farbumwandlung: registered 2 subscriptions and 0 schedules
                                        javascript.0	2019-09-23 11:35:15.656	info	Start javascript script.js.common.DL_SZ_farbumwandlung
                                        javascript.0	2019-09-23 11:35:15.620	info	Stop script script.js.common.DL_SZ_farbumwandlung
                                        
                                        Asgothian 1 Reply Last reply Reply Quote 0
                                        • Asgothian
                                          Asgothian Developer @el_malto last edited by

                                          @el_malto
                                          Nimm mal bitte das setState raus, und auch die Verbindung zu Yahka. Lass uns erst einmal die Umrechnung testen Dazu hab ich das Script etwas erweitert:.

                                          var cc = require('color-convert');
                                          var valchanged = null;
                                          
                                          function clamp(a, b, c)
                                          {
                                            return Math.max(b, Math.min(c, Math.floor(a)));
                                          }
                                          
                                          
                                          function updateLightColor()
                                          {
                                              let h = getState('javascript.0.meineDatenpunkte.DL_SZ_farbumsetzung.hue').val;
                                              let s = getState('javascript.0.meineDatenpunkte.DL_SZ_farbumsetzung.sat').val;
                                              let l = getState('zigbee.0.14b457fffe43566d.brightness').val;
                                           
                                             h = clamp(h, 0, 360)
                                             s = clamp(s, 0, 100)
                                             l = clamp(l, 0, 100)
                                             log("convert hsl to hex - HSL:" + h + ","+ s+ "," + l);
                                             let rgb_numeric =  cc.hsl.rgb(h, s, l);
                                             log("convert hsl to hex - RGB:" + JSON.stringify(rgb_numeric);
                                             let rgb_text = cc.rgb.hex(rgb_numeric);
                                             log("convert hsl to hex - HEX:" + JSON.stringify(rgb_text) );
                                          //    setState('zigbee.0.14b457fffe43566d.color', rgb_text);
                                          }
                                          
                                          on ({ id:'javascript.0.meineDatenpunkte.DL_SZ_farbumsetzung.sat', change:'ne'}, function() {if (!valchanged) valchanged = setTimeout( updateLightColor, 100); });
                                          on ({ id:'javascript.0.meineDatenpunkte.DL_SZ_farbumsetzung.hue', change:'ne'}, function() {if (!valchanged) valchanged = setTimeout( updateLightColor, 100); });
                                          
                                          

                                          Wenn du dieses Script nutzt dann wird sich die Farbe der Lampe nicht anpassen, allerdings solltest du Log-Einträge von der Umrechnung bekommen.

                                          als 2. möchte ich dich bitten die folgenden 4 Farben mal von hand in den color Datenpunkt zu schreiben (incl. gross/kleinschreibung):

                                          FF0000
                                          00ff00
                                          0000Ff
                                          FFFFFF

                                          Dabei sollte die Lampe ihre Farbe aendern (rot beim ersten, grün beim zweiten, blau beim dritten, weiss beim vierten)

                                          A.

                                          E 1 Reply Last reply Reply Quote 1
                                          • E
                                            el_malto @Asgothian last edited by

                                            @Asgothian sagte in Tradfri RGB über deconz und Yahka, Farbwahl nicht möglich:

                                            @el_malto
                                            Nimm mal bitte das setState raus, und auch die Verbindung zu Yahka. Lass uns erst einmal die Umrechnung testen Dazu hab ich das Script etwas erweitert:.

                                            var cc = require('color-convert');
                                            var valchanged = null;
                                            
                                            function clamp(a, b, c)
                                            {
                                              return Math.max(b, Math.min(c, Math.floor(a)));
                                            }
                                            
                                            
                                            function updateLightColor()
                                            {
                                                let h = getState('javascript.0.meineDatenpunkte.DL_SZ_farbumsetzung.hue').val;
                                                let s = getState('javascript.0.meineDatenpunkte.DL_SZ_farbumsetzung.sat').val;
                                                let l = getState('zigbee.0.14b457fffe43566d.brightness').val;
                                             
                                               h = clamp(h, 0, 360)
                                               s = clamp(s, 0, 100)
                                               l = clamp(l, 0, 100)
                                               log("convert hsl to hex - HSL:" + h + ","+ s+ "," + l);
                                               let rgb_numeric =  cc.hsl.rgb(h, s, l);
                                               log("convert hsl to hex - RGB:" + JSON.stringify(rgb_numeric);
                                               let rgb_text = cc.rgb.hex(rgb_numeric);
                                               log("convert hsl to hex - HEX:" + JSON.stringify(rgb_text) );
                                            //    setState('zigbee.0.14b457fffe43566d.color', rgb_text);
                                            }
                                            
                                            on ({ id:'javascript.0.meineDatenpunkte.DL_SZ_farbumsetzung.sat', change:'ne'}, function() {if (!valchanged) valchanged = setTimeout( updateLightColor, 100); });
                                            on ({ id:'javascript.0.meineDatenpunkte.DL_SZ_farbumsetzung.hue', change:'ne'}, function() {if (!valchanged) valchanged = setTimeout( updateLightColor, 100); });
                                            
                                            

                                            Wenn du dieses Script nutzt dann wird sich die Farbe der Lampe nicht anpassen, allerdings solltest du Log-Einträge von der Umrechnung bekommen.

                                            Wie meinst du das mit "die Verbindung zu Yahka raus? Dann kann ich die hue/sat Datenpunkte ja nicht mit der Homekit App wechseln und somit greift das Skript doch auch nicht. Oder soll ich die per Hand mit Werten beschreiben? Wenn ja welche Werte soll ich testen?

                                            als 2. möchte ich dich bitten die folgenden 4 Farben mal von hand in den color Datenpunkt zu schreiben (incl. gross/kleinschreibung):

                                            FF0000
                                            00ff00
                                            0000Ff
                                            FFFFFF

                                            Dabei sollte die Lampe ihre Farbe aendern (rot beim ersten, grün beim zweiten, blau beim dritten, weiss beim vierten)

                                            Das läuft soweit. Da scheint die Ikea Lampe ganz flexible zu sein. Ich glaube Alexa schreibt da immer alles groß, der color picker schreibt alle klein mit # davor. Das schluckt die Lampe immer alles Problemlos.

                                            Asgothian 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            817
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            tradfri
                                            8
                                            65
                                            8952
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo