Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Zigbee Adapter Objektbeschreibung Farbe/Farbtemperatur

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Zigbee Adapter Objektbeschreibung Farbe/Farbtemperatur

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

      @asgothian danke für die Tipps.

      Das mit den Farben bereitet mir noch Kopfschmerzen, da dieser HEX-Wert ein sagen wir mal eher iobroker untypischer Wert ist.

      YAHKA zB arbeitet mit HUE und SAT.

      Wie ich das dort umrechnen soll ist mir noch ein Rätsel.
      Es wäre echt cool, wenn man vom Zigbee Adapter diese Werte direkt ziehen könnte.

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

        @loverz sagte in Zigbee Adapter Objektbeschreibung Farbe/Farbtemperatur:

        Wie ich das dort umrechnen soll ist mir noch ein Rätsel.
        Es wäre echt cool, wenn man vom Zigbee Adapter diese Werte direkt ziehen könnte.

        Ja, das wäre es, und ich habe das auch schon auf der Liste - leider habe ich das nicht zu 100% selber in der Hand, da es davon abhängt in wie weit die Herdsman-converters (die Bibliothek die wir zur Kommunikation mit der hardware verwenden) das für alle Lampen unterstützt. Bis es da Besserung gibt kann ich die JS Bibliothek color-convert empfehlen. Diese kannst du zum JS Adapter hinzufügen und dann in einem Skript nutzen. Sie stellt Funktionen zur Umwandlung zwischen HSV und RGB zur Verfügung.

        J L J 3 Replies Last reply Reply Quote 0
        • J
          Jan.S100 @Asgothian last edited by

          @asgothian Ich hätte da auch gleich mal eine Frage. Bei meinen Hue Color Lampen ist der Color Wert nicht beschreibbar.

          { "type": "state", "common": { "name": "Color", "type": "string", "read": true, "write": false, "role": "level.color.rgb", "smartName": { "de": "Deckenlampe im Schlafzimmer", "smartType": "LIGHT" } }, "native": {}, "_id": "zigbee.1.0017880103f808f7.color", "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" }, "from": "system.adapter.zigbee.1", "user": "system.user.admin", "ts": 1632731509973 }
          

          Wenn ich ihn auf true setze funktioniert er, allerdings wird er irgendwann wieder auf false gesetzt.
          Wie kann ich den Wert dauerhaft verändern?

          Dankeschön im Voraus
          Jan

          Asgothian 1 Reply Last reply Reply Quote 0
          • Asgothian
            Asgothian Developer @Jan.S100 last edited by

            @jan-s100 sagte in Zigbee Adapter Objektbeschreibung Farbe/Farbtemperatur:

            Wenn ich ihn auf true setze funktioniert er, allerdings wird er irgendwann wieder auf false gesetzt.
            Wie kann ich den Wert dauerhaft verändern?

            gar nicht. Das muss im Adapter liegen. Kannst Du mir bitte die genaue Bezeichnung des / der betroffenen Geräte zukommen lassen, dann kann ich schauen wie der State intern definiert ist.

            A.

            J 1 Reply Last reply Reply Quote 1
            • L
              loverz @Asgothian last edited by

              @asgothian sagte in Zigbee Adapter Objektbeschreibung Farbe/Farbtemperatur:

              JS Bibliothek color-convert

              meinst du diese Funktion:
              dcaa32b5-2c29-4236-94d6-32b687e3110e-image.png

              1 Reply Last reply Reply Quote 0
              • J
                Jan.S100 @Asgothian last edited by

                @asgothian Ich hänge dir mal ein Bild mit den Eigenschaften der Lampe an.
                Screenshot_20211001-200135_Chrome.jpg

                Danke das du dich darum kümmerst.
                Jan

                1 Reply Last reply Reply Quote 0
                • J
                  jack99n @Asgothian last edited by

                  @asgothian sagte in Zigbee Adapter Objektbeschreibung Farbe/Farbtemperatur:

                  @loverz sagte in Zigbee Adapter Objektbeschreibung Farbe/Farbtemperatur:

                  Wie ich das dort umrechnen soll ist mir noch ein Rätsel.
                  Es wäre echt cool, wenn man vom Zigbee Adapter diese Werte direkt ziehen könnte.

                  Bis es da Besserung gibt kann ich die JS Bibliothek color-convert empfehlen. Diese kannst du zum JS Adapter hinzufügen und dann in einem Skript nutzen. Sie stellt Funktionen zur Umwandlung zwischen HSV und RGB zur Verfügung.

                  @Asgothian Wie würde so ein Skript aussehen wenn man color-convert zur JS Bibliothek hinzugefügt hat?

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

                    @jack99n sagte in Zigbee Adapter Objektbeschreibung Farbe/Farbtemperatur:

                    @Asgothian Wie würde so ein Skript aussehen wenn man color-convert zur JS Bibliothek hinzugefügt hat?

                    das könnte so aussehen.

                    Wichtig ist das bei diesem Beispiel es die states

                    • 0_userdata.lightstates.lamp1.hue
                    • 0_userdata.lightstates.lamp1.sat
                    • zigbee.0.0017880103124d6d.color
                    • zigbee.0.0017880103124d6d.brightness

                    gibt, ansonsten klappt das nicht.

                    Ausserdem muss in der JS Adapter Konfiguration das Paket color-convert als zusätzliches Paket eingetragen sein.

                    var colorconv = require('color-convert');
                    
                    // temp states with hue, sat
                    const HS = '0_userdata.lightstates.lamp1'
                    const Lamp = 'zigbee.0.0017880103124d6d'
                    
                    
                    
                    function HSVtoRGB(source, dest)
                    {
                        setState(dest, colorconv.hsv.hex(getState(source+".hue").val, getState(source+".sat").val, getState(dest + ".brightness")));
                    }
                    
                    
                    function RGBtoHSV(source, dest)
                    {
                        const hsv = colorconv.rgb.hsv(colorconv.hex.rgb(getState(source+'.color')));
                        setState(dest+'.hue', hsv[0]);
                        setState(dest+'.sat', hsv[1]);
                    }
                    
                    on({[HS+'.hue', HS+'.sat'], change:'ne'}, function(obj) {
                        if (obj.from.includes('javascript')) return;
                        HSVtoRGB(HS, Lamp)
                    }
                    
                    on ({Lamp1+'.color'm change:'ne')}, function(obj) {
                        if (obj.from.includes('javascript')) return;
                        RGBtoHSV(Lamp1, HS);
                    }
                    
                    
                    J 1 Reply Last reply Reply Quote 0
                    • J
                      jack99n @Asgothian last edited by

                      @asgothian Vielen dank für deine Hilfe! Leider bekomme ich beim Start von deinem Skript diesen Fehler.

                      
                      javascript.0	2021-10-02 08:21:13.617	error	at Object.createScript (vm.js:261:10)
                      
                      javascript.0	2021-10-02 08:21:13.616	error	at new Script (vm.js:88:7)
                      
                      javascript.0	2021-10-02 08:21:13.615	error	SyntaxError: Unexpected token ','
                      
                      javascript.0	2021-10-02 08:21:13.614	error	^
                      
                      javascript.0	2021-10-02 08:21:13.599	error	on({[HS+'.hue', HS+'.sat'], change:'ne'}, function(obj) {
                      
                      javascript.0	2021-10-02 08:21:13.598	error	script.js.LED-Wand.Color_convert compile failed: at script.js.LED-Wand.Color_convert:22
                      
                      
                      
                      08:39:14.588	info	javascript.0 (24619) Stop script script.js.LED-Wand.Skript-test
                      08:39:17.078	info	javascript.0 (24619) Start javascript script.js.LED-Wand.Skript-test
                      08:39:17.080	error	javascript.0 (24619) script.js.LED-Wand.Skript-test compile failed:
                       at script.js.LED-Wand.Skript-test:22
                      
                      
                      Asgothian 1 Reply Last reply Reply Quote 0
                      • Asgothian
                        Asgothian Developer @jack99n last edited by Asgothian

                        @jack99n Stimmt.. das passiert wenn man "mal eben schnell" ein einen teil aus einem grossen Skript heraus nimmt und "nur eben" anpasst. mir sind beim anpassen 2 Fehler unterlaufen:

                        Das skipt müsste so laufen

                        ar colorconv = require('color-convert');
                         
                        // temp states with hue, sat
                        const HS = '0_userdata.lightstates.lamp1'
                        const Lamp = 'zigbee.0.0017880103124d6d'
                         
                         
                         
                        function HSVtoRGB(source, dest)
                        {
                            setState(dest, colorconv.hsv.hex(getState(source+".hue").val, getState(source+".sat").val, getState(dest + ".brightness")));
                        }
                         
                         
                        function RGBtoHSV(source, dest)
                        {
                            const hsv = colorconv.rgb.hsv(colorconv.hex.rgb(getState(source+'.color')));
                            setState(dest+'.hue', hsv[0]);
                            setState(dest+'.sat', hsv[1]);
                        }
                         
                        on({id:[HS+'.hue', HS+'.sat'], change:'ne'}, function(obj) {
                            if (obj.state.from.includes('javascript')) return;
                            HSVtoRGB(HS, Lamp)
                        }
                         
                        on ({id:Lamp1+'.color', change:'ne')}, function(obj) {
                            if (obj.state.from.includes('javascript')) return;
                            RGBtoHSV(Lamp1, HS);
                        }
                        
                        J 1 Reply Last reply Reply Quote 0
                        • J
                          jack99n @Asgothian last edited by

                          @asgothian Geht leider immer noch nicht, kannst ja mal wenn du Ruhe und Zeit hast dir es noch mal anschauen.

                          2021-10-02 22:29:24.985	error	at processImmediate (internal/timers.js:463:21)
                          
                          javascript.0
                          2021-10-02 22:29:24.985	error	at Immediate._onImmediate (/opt/iobroker/node_modules/iobroker.javascript/main.js:1306:17)
                          
                          javascript.0
                          2021-10-02 22:29:24.984	error	at /opt/iobroker/node_modules/iobroker.javascript/main.js:1817:17
                          
                          javascript.0
                          2021-10-02 22:29:24.984	error	at prepareScript (/opt/iobroker/node_modules/iobroker.javascript/main.js:1716:37)
                          
                          javascript.0
                          2021-10-02 22:29:24.984	error	at createVM (/opt/iobroker/node_modules/iobroker.javascript/main.js:1469:28)
                          
                          javascript.0
                          2021-10-02 22:29:24.983	error	at Object.createScript (vm.js:261:10)
                          
                          javascript.0
                          2021-10-02 22:29:24.983	error	at new Script (vm.js:88:7)
                          
                          javascript.0
                          2021-10-02 22:29:24.983	error	SyntaxError: missing ) after argument list
                          
                          javascript.0
                          2021-10-02 22:29:24.982	error	^
                          
                          javascript.0
                          2021-10-02 22:29:24.982	error	}
                          
                          javascript.0
                          2021-10-02 22:29:24.981	error	script.js.LED-Wand.Skript_Test compile failed:
                          at script.js.LED-Wand.Skript_Test:25
                          
                          Asgothian 1 Reply Last reply Reply Quote 0
                          • Asgothian
                            Asgothian Developer @jack99n last edited by

                            @jack99n stimmt.. fehlt noch eine ')' in Zeile 25 und 30

                            A.

                            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

                            880
                            Online

                            31.7k
                            Users

                            79.8k
                            Topics

                            1.3m
                            Posts

                            5
                            18
                            1437
                            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