Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Einsteigerfragen
  4. Einbindung von Geräten
  5. xy Farbe setzen

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    17
    1
    578

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    5.5k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.4k

xy Farbe setzen

Scheduled Pinned Locked Moved Einbindung von Geräten
48 Posts 7 Posters 6.6k Views 5 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • H Helmex

    Hallo. Ich habe hier einen MiBoxer Zigbee Led Controller.
    Wie kann ich im Blockly die Farben xy setzen?

    paul53P Offline
    paul53P Offline
    paul53
    wrote on last edited by paul53
    #37

    @helmex sagte: Wie kann ich im Blockly die Farben xy setzen?

    Erstelle eine JS-Funktion mit Ergebnis

    Bild_2022-10-07_154840590.png

    mit folgendem Inhalt:

    const convert = require('@q42philips/hue-color-converter');
    return convert.calculateXY(r, g, b);
    

    nachdem @q42philips/hue-color-converter unter "Zusätzliche NPM-Module" in der Konfiguration des Javascript-Instanz eingetragen wurde.

    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

    1 Reply Last reply
    0
    • DJMarc75D DJMarc75

      @helmex sagte in xy Farbe setzen:

      MiBoxer Controller sowie den Dimmerschalter von Ikea

      kenn ich nicht.
      Aber der Stripe sollte doch eigentlich autark und nicht ausschliesslich per iobroker schaltbar sein - die Frage ist WIE.
      Wenn Du das (ich nehme an dass es da wohl irgendeine Anleitung gibt) mal in Betrieb nimmst kann man vll auch sehen wie sich die DPs hier in ioBroker verändern.

      H Offline
      H Offline
      Helmex
      wrote on last edited by
      #38

      @djmarc75 Der Stripe hat keinen eigenen Controller. Ich kann den Wert xy ändern zB [0.4,0.4] zu [0.1,0.4]. Damit verändere ich die Farben. Wenn ich nun den hue-color-converter zum laufen bringe würde, könne ich weiterkommen.

      paul53P 1 Reply Last reply
      0
      • H Helmex

        @djmarc75 Der Stripe hat keinen eigenen Controller. Ich kann den Wert xy ändern zB [0.4,0.4] zu [0.1,0.4]. Damit verändere ich die Farben. Wenn ich nun den hue-color-converter zum laufen bringe würde, könne ich weiterkommen.

        paul53P Offline
        paul53P Offline
        paul53
        wrote on last edited by paul53
        #39

        @helmex sagte: hue-color-converter zum laufen bringe würde

        Einfach unter "Zusätzliche NPM-Module" in die Konfiguration des Javascript-Instanz eintragen.

        rgb2xy.JPG

        ... und dann in Blockly

        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

        H 1 Reply Last reply
        0
        • paul53P paul53

          @helmex sagte: hue-color-converter zum laufen bringe würde

          Einfach unter "Zusätzliche NPM-Module" in die Konfiguration des Javascript-Instanz eintragen.

          rgb2xy.JPG

          ... und dann in Blockly

          H Offline
          H Offline
          Helmex
          wrote on last edited by
          #40

          @paul53 Screenshot 2022-10-07 16.10.12.jpg
          Wie übergebe ich r g b an die Funktion?

          DJMarc75D 1 Reply Last reply
          0
          • H Helmex

            @paul53 Screenshot 2022-10-07 16.10.12.jpg
            Wie übergebe ich r g b an die Funktion?

            DJMarc75D Offline
            DJMarc75D Offline
            DJMarc75
            wrote on last edited by
            #41

            @helmex r,g,b solltest Du in der Funktion hinzufügen:

            Screenshot 2022-10-07 162121.png

            Lehrling seit 1975 !!!
            Beitrag geholfen ? dann gerne ein upvote rechts unten im Beitrag klicken ;)
            https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge

            H 1 Reply Last reply
            0
            • DJMarc75D DJMarc75

              @helmex r,g,b solltest Du in der Funktion hinzufügen:

              Screenshot 2022-10-07 162121.png

              H Offline
              H Offline
              Helmex
              wrote on last edited by
              #42

              @djmarc75 COOL - Funktioniert. Vielen Dank !!!

              DJMarc75D 1 Reply Last reply
              0
              • H Helmex

                @djmarc75 COOL - Funktioniert. Vielen Dank !!!

                DJMarc75D Offline
                DJMarc75D Offline
                DJMarc75
                wrote on last edited by
                #43

                @helmex sagte in xy Farbe setzen:

                Vielen Dank !!!

                Da musst Du Dich bei @paul53 bedanken - er hat abgeliefert !:stuck_out_tongue_winking_eye:

                Lehrling seit 1975 !!!
                Beitrag geholfen ? dann gerne ein upvote rechts unten im Beitrag klicken ;)
                https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge

                ArmilarA 1 Reply Last reply
                0
                • DJMarc75D DJMarc75

                  @helmex sagte in xy Farbe setzen:

                  Vielen Dank !!!

                  Da musst Du Dich bei @paul53 bedanken - er hat abgeliefert !:stuck_out_tongue_winking_eye:

                  ArmilarA Offline
                  ArmilarA Offline
                  Armilar
                  Most Active Forum Testing
                  wrote on last edited by Armilar
                  #44

                  @djmarc75 sagte in xy Farbe setzen:

                  @helmex sagte in xy Farbe setzen:

                  Vielen Dank !!!

                  Da musst Du Dich bei @paul53 bedanken - er hat abgeliefert !:stuck_out_tongue_winking_eye:

                  Sorry zu spät ;-) . Hab es soeben erst in der Zusammenfassung von gestern gesehen. Falls es noch jemanden interessiert. So benutzen wir es im NSPanel lovelace UI wenn wir exakt die Problematik mit dem DeConz lösen wollen. Im DeConz funktioniert in der Tat nur der XY im Zusammenspiel mit Farben korrekt...

                  function rgb_to_cie(red, green, blue)
                  {
                  	//Apply a gamma correction to the RGB values, which makes the color more vivid and more the like the color displayed on the screen of your device
                  	var vred 	= (red > 0.04045) ? Math.pow((red + 0.055) / (1.0 + 0.055), 2.4) : (red / 12.92);
                  	var vgreen 	= (green > 0.04045) ? Math.pow((green + 0.055) / (1.0 + 0.055), 2.4) : (green / 12.92);
                  	var vblue 	= (blue > 0.04045) ? Math.pow((blue + 0.055) / (1.0 + 0.055), 2.4) : (blue / 12.92); 
                  
                  	//RGB values to XYZ using the Wide RGB D65 conversion formula
                  	var X 		= vred * 0.664511 + vgreen * 0.154324 + vblue * 0.162028;
                  	var Y 		= vred * 0.283881 + vgreen * 0.668433 + vblue * 0.047685;
                  	var Z 		= vred * 0.000088 + vgreen * 0.072310 + vblue * 0.986039;
                  
                  	//Calculate the xy values from the XYZ values
                  	var ciex 	= (X / (X + Y + Z)).toFixed(4);
                  	var ciey 	= (Y / (X + Y + Z)).toFixed(4);
                          var cie         = "[" + ciex + "," + ciey + "]"
                  
                  	return cie;
                  }
                  

                  im return "cie" ist euer XY enthalten. Also nur für den Fall, dass das jemand ohne "Zusätzliche NPM-Module" realisieren möchte.

                  Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                  https://github.com/joBr99/nspanel-lovelace-ui/wiki

                  Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                  H 1 Reply Last reply
                  0
                  • ArmilarA Armilar

                    @djmarc75 sagte in xy Farbe setzen:

                    @helmex sagte in xy Farbe setzen:

                    Vielen Dank !!!

                    Da musst Du Dich bei @paul53 bedanken - er hat abgeliefert !:stuck_out_tongue_winking_eye:

                    Sorry zu spät ;-) . Hab es soeben erst in der Zusammenfassung von gestern gesehen. Falls es noch jemanden interessiert. So benutzen wir es im NSPanel lovelace UI wenn wir exakt die Problematik mit dem DeConz lösen wollen. Im DeConz funktioniert in der Tat nur der XY im Zusammenspiel mit Farben korrekt...

                    function rgb_to_cie(red, green, blue)
                    {
                    	//Apply a gamma correction to the RGB values, which makes the color more vivid and more the like the color displayed on the screen of your device
                    	var vred 	= (red > 0.04045) ? Math.pow((red + 0.055) / (1.0 + 0.055), 2.4) : (red / 12.92);
                    	var vgreen 	= (green > 0.04045) ? Math.pow((green + 0.055) / (1.0 + 0.055), 2.4) : (green / 12.92);
                    	var vblue 	= (blue > 0.04045) ? Math.pow((blue + 0.055) / (1.0 + 0.055), 2.4) : (blue / 12.92); 
                    
                    	//RGB values to XYZ using the Wide RGB D65 conversion formula
                    	var X 		= vred * 0.664511 + vgreen * 0.154324 + vblue * 0.162028;
                    	var Y 		= vred * 0.283881 + vgreen * 0.668433 + vblue * 0.047685;
                    	var Z 		= vred * 0.000088 + vgreen * 0.072310 + vblue * 0.986039;
                    
                    	//Calculate the xy values from the XYZ values
                    	var ciex 	= (X / (X + Y + Z)).toFixed(4);
                    	var ciey 	= (Y / (X + Y + Z)).toFixed(4);
                            var cie         = "[" + ciex + "," + ciey + "]"
                    
                    	return cie;
                    }
                    

                    im return "cie" ist euer XY enthalten. Also nur für den Fall, dass das jemand ohne "Zusätzliche NPM-Module" realisieren möchte.

                    H Offline
                    H Offline
                    Helmex
                    wrote on last edited by
                    #45

                    In welchem Format werden die Werte übergeben? Ich hätte 0-254 vermutet, daß klappt aber nicht. Wie kann ich mit debug Output die Rückgabe der Funktion zur Kontrolle ausgeben?

                    paul53P 1 Reply Last reply
                    0
                    • H Helmex

                      In welchem Format werden die Werte übergeben? Ich hätte 0-254 vermutet, daß klappt aber nicht. Wie kann ich mit debug Output die Rückgabe der Funktion zur Kontrolle ausgeben?

                      paul53P Offline
                      paul53P Offline
                      paul53
                      wrote on last edited by paul53
                      #46

                      @helmex sagte: In welchem Format werden die Werte übergeben?

                      An das NPM-Modul 0-255.

                      EDIT: Etwas abgewandelte Funktion aus dem NPM-Modul:

                      function rgb2xy(r, g, b) {
                      // Anfang in Blockly
                          r = r / 255;
                          g = g / 255;
                          b = b / 255;
                          r = r > 0.04045 ? Math.pow(((r + 0.055) / 1.055), 2.4000000953674316) : r / 12.92;
                          g = g > 0.04045 ? Math.pow(((g + 0.055) / 1.055), 2.4000000953674316) : g / 12.92;
                          b = b > 0.04045 ? Math.pow(((b + 0.055) / 1.055), 2.4000000953674316) : b / 12.92;
                          let x = r * 0.664511 + g * 0.154324 + b * 0.162028;
                          let y = r * 0.283881 + g * 0.668433 + b * 0.047685;
                          let z = r * 8.8E-5 + g * 0.07231 + b * 0.986039;
                          let xy = [0, 0];
                          if(x + y + z > 0) xy = [Math.round(1000 * x / (x + y + z)) / 1000, Math.round(1000 * y / (x + y + z)) / 1000];
                          return xy;
                      // Ende in Blockly  
                      }
                      

                      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                      Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                      H 1 Reply Last reply
                      0
                      • paul53P paul53

                        @helmex sagte: In welchem Format werden die Werte übergeben?

                        An das NPM-Modul 0-255.

                        EDIT: Etwas abgewandelte Funktion aus dem NPM-Modul:

                        function rgb2xy(r, g, b) {
                        // Anfang in Blockly
                            r = r / 255;
                            g = g / 255;
                            b = b / 255;
                            r = r > 0.04045 ? Math.pow(((r + 0.055) / 1.055), 2.4000000953674316) : r / 12.92;
                            g = g > 0.04045 ? Math.pow(((g + 0.055) / 1.055), 2.4000000953674316) : g / 12.92;
                            b = b > 0.04045 ? Math.pow(((b + 0.055) / 1.055), 2.4000000953674316) : b / 12.92;
                            let x = r * 0.664511 + g * 0.154324 + b * 0.162028;
                            let y = r * 0.283881 + g * 0.668433 + b * 0.047685;
                            let z = r * 8.8E-5 + g * 0.07231 + b * 0.986039;
                            let xy = [0, 0];
                            if(x + y + z > 0) xy = [Math.round(1000 * x / (x + y + z)) / 1000, Math.round(1000 * y / (x + y + z)) / 1000];
                            return xy;
                        // Ende in Blockly  
                        }
                        
                        H Offline
                        H Offline
                        Helmex
                        wrote on last edited by
                        #47

                        @paul53 Die Ausgabe zur Kontrolle mit debug output habe ich inbekommen.
                        Zu meinem Verständnis: xy ist ein Farbwert unabhängig von der Helligkeit. Die Funktion errechnet aus dem Verhältnis der RGB-Farben den xy-Wert. Richtig?

                        paul53P 1 Reply Last reply
                        0
                        • H Helmex

                          @paul53 Die Ausgabe zur Kontrolle mit debug output habe ich inbekommen.
                          Zu meinem Verständnis: xy ist ein Farbwert unabhängig von der Helligkeit. Die Funktion errechnet aus dem Verhältnis der RGB-Farben den xy-Wert. Richtig?

                          paul53P Offline
                          paul53P Offline
                          paul53
                          wrote on last edited by
                          #48

                          @helmex sagte: Die Funktion errechnet aus dem Verhältnis der RGB-Farben den xy-Wert. Richtig?

                          Richtig.

                          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                          1 Reply Last reply
                          0
                          Reply
                          • Reply as topic
                          Log in to reply
                          • Oldest to Newest
                          • Newest to Oldest
                          • Most Votes


                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          573

                          Online

                          32.7k

                          Users

                          82.6k

                          Topics

                          1.3m

                          Posts
                          Community
                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                          ioBroker Community 2014-2025
                          logo
                          • Login

                          • Don't have an account? Register

                          • Login or register to search.
                          • First post
                            Last post
                          0
                          • Home
                          • Recent
                          • Tags
                          • Unread 0
                          • Categories
                          • Unreplied
                          • Popular
                          • GitHub
                          • Docu
                          • Hilfe