Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Farbe bei Yahka(HomeKit) mit Yeelight

NEWS

  • Der neue Monatsrückblick für Mai und Juni 2026 ist online!
    BluefoxB
    Bluefox
    8
    1
    911

  • wichtiges UPDATE für controller 7.2.2 im stable
    HomoranH
    Homoran
    10
    1
    3.5k

  • Neues YouTube-Video: Visualisierung im Devices-Adapter
    BluefoxB
    Bluefox
    16
    1
    5.9k

Farbe bei Yahka(HomeKit) mit Yeelight

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
javascript
23 Beiträge 6 Kommentatoren 3.2k Aufrufe 7 Beobachtet
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • H haenk93

    @Asgothian Dann geht der Kelvinwert ins Minus
    Muss leider gestehen, dass ich an diesem Punkt das jetzt erstmal zurückstelle und mit den anderen Sachen weiter mache. Vielleicht findet sich eine Lösung wenn ich da etwas besser in der Materie bin

    AsgothianA Offline
    AsgothianA Offline
    Asgothian
    Developer
    schrieb am zuletzt editiert von
    #10

    @haenk93
    Stell bitte auf “Script” um.
    toHomekit

    return 140 + (6500 - value) * 36/650
    

    toIobroker

    return 6500 - (value - 140) * 650/36
    

    ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
    "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

    H L 2 Antworten Letzte Antwort
    0
    • AsgothianA Asgothian

      @haenk93
      Stell bitte auf “Script” um.
      toHomekit

      return 140 + (6500 - value) * 36/650
      

      toIobroker

      return 6500 - (value - 140) * 650/36
      
      H Offline
      H Offline
      haenk93
      schrieb am zuletzt editiert von
      #11

      @Asgothian Vielen Dank es funktioniert 😊
      Zwar kann ich die Farbtemperatur nicht stufenlos über diesen Regler ändern aber die vor gespeicherten Temperaturen funktionieren in der Home App gehen problemlos

      1 Antwort Letzte Antwort
      0
      • AsgothianA Asgothian

        @haenk93
        Stell bitte auf “Script” um.
        toHomekit

        return 140 + (6500 - value) * 36/650
        

        toIobroker

        return 6500 - (value - 140) * 650/36
        
        L Offline
        L Offline
        loverz
        schrieb am zuletzt editiert von
        #12

        @Asgothian Also bei mir schmiert immer der Yeelight Adapter ab!
        Ich denke, das liegt daran, dass dein Script bis auf 0 runter geht, das mag der nicht. Mindestens müssen 2700 eingetragen werden.

        Kannst du mir kurz erklären, wie deine "Formel" funktioniert? Vielleicht kann ich sie für meinen Zweck korrigieren.

        AsgothianA 1 Antwort Letzte Antwort
        0
        • L loverz

          @Asgothian Also bei mir schmiert immer der Yeelight Adapter ab!
          Ich denke, das liegt daran, dass dein Script bis auf 0 runter geht, das mag der nicht. Mindestens müssen 2700 eingetragen werden.

          Kannst du mir kurz erklären, wie deine "Formel" funktioniert? Vielleicht kann ich sie für meinen Zweck korrigieren.

          AsgothianA Offline
          AsgothianA Offline
          Asgothian
          Developer
          schrieb am zuletzt editiert von
          #13

          @loverz
          es ist einfache Mathematik.

          im "toHomekit" Skript ist value der Wert der vom ioBroker kommt, also bei Dir 2700 - 6500, Mathematisch wird daraus:

          bei value = 0: 500
          bei value = 2700 : 354.4
          bei value - 6500: 140

          im "toIobroker" Skript ist value der Wert von HomeKit, also 500-140

          Die Formel kannst du dann selber ausrechnen.

          Um auf 2700 - 6500 zu kommen, nicht 0 - 6500 kannst du einfach den Wert "650" durch "380" ersetzen.

          Zur Sicherheit würde ich wie folgt arbeiten:
          toHomekit

          return Math.max(Math.min(140+(6500-value) * 36/380, 500),140)
          

          toIoBroker

          return Math.max(Math.min(6500-(value-140)*380/36, 6500),2700)
          

          A.

          ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
          "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

          L I 3 Antworten Letzte Antwort
          0
          • AsgothianA Asgothian

            @loverz
            es ist einfache Mathematik.

            im "toHomekit" Skript ist value der Wert der vom ioBroker kommt, also bei Dir 2700 - 6500, Mathematisch wird daraus:

            bei value = 0: 500
            bei value = 2700 : 354.4
            bei value - 6500: 140

            im "toIobroker" Skript ist value der Wert von HomeKit, also 500-140

            Die Formel kannst du dann selber ausrechnen.

            Um auf 2700 - 6500 zu kommen, nicht 0 - 6500 kannst du einfach den Wert "650" durch "380" ersetzen.

            Zur Sicherheit würde ich wie folgt arbeiten:
            toHomekit

            return Math.max(Math.min(140+(6500-value) * 36/380, 500),140)
            

            toIoBroker

            return Math.max(Math.min(6500-(value-140)*380/36, 6500),2700)
            

            A.

            L Offline
            L Offline
            loverz
            schrieb am zuletzt editiert von
            #14

            @Asgothian sagte in Farbe bei Yahka(HomeKit) mit Yeelight:

            return Math.max(Math.min(6500-(value-140)*380/36, 6500),2700)

            WOW, Mega! Das funktioniert.

            Ich danke dir vielmals!!
            Schönen Abend noch.

            1 Antwort Letzte Antwort
            0
            • AsgothianA Asgothian

              @loverz
              es ist einfache Mathematik.

              im "toHomekit" Skript ist value der Wert der vom ioBroker kommt, also bei Dir 2700 - 6500, Mathematisch wird daraus:

              bei value = 0: 500
              bei value = 2700 : 354.4
              bei value - 6500: 140

              im "toIobroker" Skript ist value der Wert von HomeKit, also 500-140

              Die Formel kannst du dann selber ausrechnen.

              Um auf 2700 - 6500 zu kommen, nicht 0 - 6500 kannst du einfach den Wert "650" durch "380" ersetzen.

              Zur Sicherheit würde ich wie folgt arbeiten:
              toHomekit

              return Math.max(Math.min(140+(6500-value) * 36/380, 500),140)
              

              toIoBroker

              return Math.max(Math.min(6500-(value-140)*380/36, 6500),2700)
              

              A.

              L Offline
              L Offline
              loverz
              schrieb am zuletzt editiert von
              #15

              @Asgothian sagte in Farbe bei Yahka(HomeKit) mit Yeelight:

              return Math.max(Math.min(6500-(value-140)*380/36, 6500),2700)

              WOW, Mega! Das funktioniert.

              Ich danke dir vielmals!!
              Schönen Abend noch.jetzt muss ich doch nochmal nachhaken, da ich an einer anderen Stelle (KNX) einen Wert in Prozenz (0-100) brauche.

              Nun muss ich die 2700-6500 Kelvin in die Prozent umrechnen.

              Wie bist du oben auf die 354,4 gekommen?

              Ich bin in Mathematik leider nicht so ein Genie, und weiß daher nicht wirklich, wie ich vorgehen muss :(

              AsgothianA 1 Antwort Letzte Antwort
              0
              • L loverz

                @Asgothian sagte in Farbe bei Yahka(HomeKit) mit Yeelight:

                return Math.max(Math.min(6500-(value-140)*380/36, 6500),2700)

                WOW, Mega! Das funktioniert.

                Ich danke dir vielmals!!
                Schönen Abend noch.jetzt muss ich doch nochmal nachhaken, da ich an einer anderen Stelle (KNX) einen Wert in Prozenz (0-100) brauche.

                Nun muss ich die 2700-6500 Kelvin in die Prozent umrechnen.

                Wie bist du oben auf die 354,4 gekommen?

                Ich bin in Mathematik leider nicht so ein Genie, und weiß daher nicht wirklich, wie ich vorgehen muss :(

                AsgothianA Offline
                AsgothianA Offline
                Asgothian
                Developer
                schrieb am zuletzt editiert von
                #16

                @loverz

                Du willst von 2700-6500 auf 0 bis 100 umrechnen, oder von 2700-6500 auf 100-0 umrechnen ?

                ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
                "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

                L 1 Antwort Letzte Antwort
                0
                • AsgothianA Asgothian

                  @loverz

                  Du willst von 2700-6500 auf 0 bis 100 umrechnen, oder von 2700-6500 auf 100-0 umrechnen ?

                  L Offline
                  L Offline
                  loverz
                  schrieb am zuletzt editiert von
                  #17

                  @Asgothian 2700-6500 von 0-100%, aber hab was gefunden, was mir geholfen hat:
                  https://www.gutefrage.net/frage/prozentwert-aus-einem-wertebereich-ermitteln-formel

                  1 Antwort Letzte Antwort
                  0
                  • AsgothianA Asgothian

                    @loverz
                    es ist einfache Mathematik.

                    im "toHomekit" Skript ist value der Wert der vom ioBroker kommt, also bei Dir 2700 - 6500, Mathematisch wird daraus:

                    bei value = 0: 500
                    bei value = 2700 : 354.4
                    bei value - 6500: 140

                    im "toIobroker" Skript ist value der Wert von HomeKit, also 500-140

                    Die Formel kannst du dann selber ausrechnen.

                    Um auf 2700 - 6500 zu kommen, nicht 0 - 6500 kannst du einfach den Wert "650" durch "380" ersetzen.

                    Zur Sicherheit würde ich wie folgt arbeiten:
                    toHomekit

                    return Math.max(Math.min(140+(6500-value) * 36/380, 500),140)
                    

                    toIoBroker

                    return Math.max(Math.min(6500-(value-140)*380/36, 6500),2700)
                    

                    A.

                    I Offline
                    I Offline
                    Io-Alex
                    schrieb am zuletzt editiert von
                    #18

                    @asgothian Könntest du bitte deine Berechnung für das Skript genauer erläutern?
                    Ich müsste sie für meine Anwendung anpassen

                    Meine Werte liegen für Ikea Lampen min 2203 und max 4000
                    Philips Hue Lampen min 2203 und max 6494

                    1 Antwort Letzte Antwort
                    0
                    • H haenk93

                      @Asgothian Es geht hauptsächlich um die Farbtemperatur, die Farbe konnte ich nun bereits selbst herausfinden.

                      Dort erwartet der Yeelight-Adapter diese Kelvinwerte zwischen 0 und 6500
                      Homekit erwartet dort Werte zwischen 140 und 500, die so wie ich es nachgelesen habe auch noch invertiert sind.
                      Heißt: 6500 Kelvin sind gleich 140 bei Homekit.

                      Bin da leider ein völliger Newbie habe gestern erst angefangen. Und dachte, dass jemand bestimmt schon auf das Problem gestoßen ist und eine einfache Anleitung geben könnte.

                      S Offline
                      S Offline
                      SteffKoh
                      schrieb am zuletzt editiert von
                      #19

                      @haenk93 Hey kannst du mir sagen/zeigen wie du das mit der Farbe gelöst hast? Mir wird die richtige Farbe in Homekit angezeigt aber ich kann die Farbe nicht ändern. Besten Dank.

                      1 Antwort Letzte Antwort
                      0
                      • J Offline
                        J Offline
                        Jimbo21
                        schrieb am zuletzt editiert von Jimbo21
                        #20

                        Meine Yeelight hat 1700k - 6500k.
                        Habe das Script von @asgothian so abgeändert. Bei mir schmiert der Yeelight 2.0 Adapter immer ab.

                        toHomekit

                        return Math.max(Math.min(140+(6500-value) * 36/380, 500),140)

                        toIoBroker

                        return Math.max(Math.min(6500-(value-140)*380/36, 6500),1700)

                        1 Antwort Letzte Antwort
                        0
                        • AsgothianA Offline
                          AsgothianA Offline
                          Asgothian
                          Developer
                          schrieb am zuletzt editiert von
                          #21

                          Schmiert der Yeelight adapter auch dann ab wenn

                          • du von Hand den Farbwert schnell innerhalb des gültigen Ranges veränderst
                          • du ggf. eine Fliesskommazahl einträgst (also 3000.5 - was bei der Berechnung passieren kann)

                          A.

                          ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
                          "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

                          1 Antwort Letzte Antwort
                          0
                          • J Offline
                            J Offline
                            Jimbo21
                            schrieb am zuletzt editiert von Jimbo21
                            #22
                            • du von Hand den Farbwert schnell innerhalb des gültigen Ranges veränderst
                            • du ggf. eine Fliesskommazahl einträgst (also 3000.5 - was bei der Berechnung passieren kann)
                              Wo genau kann man das alles machen ?

                            Ich muss gestehen, ich weiß nicht genau was du meinst, aber ich versuche es mal zu beschreiben, falls das hilft.
                            An Hand der Bilder.

                            Auf dem ersten Bild kann ich die Farben einfach wechseln. Orange, Lila, Weiß. Hier passiert nichts, alles gut.
                            Auf dem zweiten Bild, bleibe ich innerhalb des markierten Kreises passiert auch nichts, wenn ich aber außerhalb, die stelle mit X markiert, wähle, stürzt der Yeelight 2.0 Adapter ab und startet neu und die Lampe freezt bzw ist erst mal in Homekit nicht mehr steuerbar.

                            image0.jpeg

                            image1.jpeg

                            1 Antwort Letzte Antwort
                            0
                            • AsgothianA Offline
                              AsgothianA Offline
                              Asgothian
                              Developer
                              schrieb am zuletzt editiert von Asgothian
                              #23

                              Mir war schon klar was gemeint ist. Du musst folgendes testen:

                              • im Objektbaum, in den Datenpunkt der die Farbe steuert eine Zahl mit Nachkommastelle eingeben - stürzt der Yeelight Adapter dann ab ?
                              • an gleicher Stelle schnell, sprich 2 mal pro Sekunde jeweils einen anderen gültigen Wert eingeben. Stürzt der Yeelight Adapter dann ab ?
                              • an gleicher Stelle einen Wert ausserhalb der von Dir vorgegebenen Grenzen eingeben. Stürzt der Yeelight Adapter dann ab ?
                              • an gleicher Stelle Text eingeben. Stürzt der Yeelight Adapter dann ab ?

                              A.

                              ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
                              "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

                              1 Antwort Letzte Antwort
                              0

                              Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

                              Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

                              Mit deinem Input könnte dieser Beitrag noch besser werden 💗

                              Registrieren Anmelden
                              Antworten
                              • In einem neuen Thema antworten
                              Anmelden zum Antworten
                              • Älteste zuerst
                              • Neuste zuerst
                              • Meiste Stimmen


                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              309

                              Online

                              33.0k

                              Benutzer

                              83.5k

                              Themen

                              1.3m

                              Beiträge
                              Community
                              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                              ioBroker Community 2014-2026
                              logo
                              • Anmelden

                              • Du hast noch kein Konto? Registrieren

                              • Anmelden oder registrieren, um zu suchen
                              • Erster Beitrag
                                Letzter Beitrag
                              0
                              • Home
                              • Aktuell
                              • Tags
                              • Ungelesen 0
                              • Kategorien
                              • Unreplied
                              • Beliebt
                              • GitHub
                              • Docu
                              • Hilfe