Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • 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

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

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. HUE Farbwert (HSV?) nach HEX konvertieren

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    553

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.7k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.6k

HUE Farbwert (HSV?) nach HEX konvertieren

Geplant Angeheftet Gesperrt Verschoben Blockly
25 Beiträge 4 Kommentatoren 2.3k Aufrufe 4 Watching
  • Ä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.
  • T tklein

    @armilar mhhmm

    das hier

    {"enhancehue":24415,"saturation":254,"transtime":5}
    

    ergibt leider

    [1275,-1963.4999999999998,258.47083333333]
    

    da ist noch der wurm drin:

       hue = hue/360;
        saturation = saturation/100;
    
        let chroma = value * saturation;
    
        let x = chroma * (1 - Math.abs((hue % 2) - 1));
    
        let rgb = hue <= 1 ? [chroma, x, 0] :
    
            hue <= 2 ? [x, chroma, 0] :
    
                hue <= 3 ? [0, chroma, x] :
    
                    hue <= 4 ? [0, x, chroma] :
    
                        hue <= 5 ? [x, 0, chroma] :
    
                            [chroma, 0, x];
    
     
    
        return rgb.map(v => (v + value - chroma) * 255);
    
    ArmilarA Offline
    ArmilarA Offline
    Armilar
    Most Active Forum Testing
    schrieb am zuletzt editiert von Armilar
    #12

    @tklein

    function hsv2rgb(hue, saturation, value) {
        hue /= 60;
        let chroma = value * saturation;
        let x = chroma * (1 - Math.abs((hue % 2) - 1));
        let rgb = hue <= 1 ? [chroma, x, 0] :
            hue <= 2 ? [x, chroma, 0] :
                hue <= 3 ? [0, chroma, x] :
                    hue <= 4 ? [0, x, chroma] :
                        hue <= 5 ? [x, 0, chroma] :
                            [chroma, 0, x];
     
        return rgb.map(v => (v + value - chroma) * 255);
    }
    
    
    function ConvertRGBtoHex(red, green, blue) {
        return '#' + ColorToHex(red) + ColorToHex(green) + ColorToHex(blue);
    }
    
    //Helper
    function ColorToHex(color) {
        let hexadecimal = color.toString(16);
        return hexadecimal.length == 1 ? '0' + hexadecimal : hexadecimal;
    }
    
    let enhancehue = 32896;
    let saturation = 254;
    let transtime =  5;
    log(hsv2rgb(enhancehue/360, saturation/254 , 1))
    let rgb = hsv2rgb(enhancehue/360, saturation/254, 1)
    log(String(ConvertRGBtoHex(Math.round(rgb[0]*1)/1, Math.round(rgb[1]*1)/1, Math.round(rgb[2]*1)/1)));
    

    So kommen bei mir sinnvolle Werte raus:

    script.js.common.DEV.Beispiele.HSV2HEX: [ 121.64444444444442, 255, 0 ]
    script.js.common.DEV.Beispiele.HSV2HEX: #7aff00
    

    a1d572e2-a57c-4903-a06b-ae9c77408fba-image.png

    Würde bedeuten
    hsv2rgb(enhancehue/360, saturation/254 , 1)

    value immer auf 1

    P.S.: Was ist denn das für ein Adapter, der so merkwürdige Werte liefert?

    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.

    T ArmilarA 3 Antworten Letzte Antwort
    0
    • ArmilarA Armilar

      @tklein

      function hsv2rgb(hue, saturation, value) {
          hue /= 60;
          let chroma = value * saturation;
          let x = chroma * (1 - Math.abs((hue % 2) - 1));
          let rgb = hue <= 1 ? [chroma, x, 0] :
              hue <= 2 ? [x, chroma, 0] :
                  hue <= 3 ? [0, chroma, x] :
                      hue <= 4 ? [0, x, chroma] :
                          hue <= 5 ? [x, 0, chroma] :
                              [chroma, 0, x];
       
          return rgb.map(v => (v + value - chroma) * 255);
      }
      
      
      function ConvertRGBtoHex(red, green, blue) {
          return '#' + ColorToHex(red) + ColorToHex(green) + ColorToHex(blue);
      }
      
      //Helper
      function ColorToHex(color) {
          let hexadecimal = color.toString(16);
          return hexadecimal.length == 1 ? '0' + hexadecimal : hexadecimal;
      }
      
      let enhancehue = 32896;
      let saturation = 254;
      let transtime =  5;
      log(hsv2rgb(enhancehue/360, saturation/254 , 1))
      let rgb = hsv2rgb(enhancehue/360, saturation/254, 1)
      log(String(ConvertRGBtoHex(Math.round(rgb[0]*1)/1, Math.round(rgb[1]*1)/1, Math.round(rgb[2]*1)/1)));
      

      So kommen bei mir sinnvolle Werte raus:

      script.js.common.DEV.Beispiele.HSV2HEX: [ 121.64444444444442, 255, 0 ]
      script.js.common.DEV.Beispiele.HSV2HEX: #7aff00
      

      a1d572e2-a57c-4903-a06b-ae9c77408fba-image.png

      Würde bedeuten
      hsv2rgb(enhancehue/360, saturation/254 , 1)

      value immer auf 1

      P.S.: Was ist denn das für ein Adapter, der so merkwürdige Werte liefert?

      T Offline
      T Offline
      tklein
      schrieb am zuletzt editiert von
      #13

      @armilar danke schaue ich mir an und versuche es zu verstehen

      1 Antwort Letzte Antwort
      0
      • ArmilarA Armilar

        @tklein

        function hsv2rgb(hue, saturation, value) {
            hue /= 60;
            let chroma = value * saturation;
            let x = chroma * (1 - Math.abs((hue % 2) - 1));
            let rgb = hue <= 1 ? [chroma, x, 0] :
                hue <= 2 ? [x, chroma, 0] :
                    hue <= 3 ? [0, chroma, x] :
                        hue <= 4 ? [0, x, chroma] :
                            hue <= 5 ? [x, 0, chroma] :
                                [chroma, 0, x];
         
            return rgb.map(v => (v + value - chroma) * 255);
        }
        
        
        function ConvertRGBtoHex(red, green, blue) {
            return '#' + ColorToHex(red) + ColorToHex(green) + ColorToHex(blue);
        }
        
        //Helper
        function ColorToHex(color) {
            let hexadecimal = color.toString(16);
            return hexadecimal.length == 1 ? '0' + hexadecimal : hexadecimal;
        }
        
        let enhancehue = 32896;
        let saturation = 254;
        let transtime =  5;
        log(hsv2rgb(enhancehue/360, saturation/254 , 1))
        let rgb = hsv2rgb(enhancehue/360, saturation/254, 1)
        log(String(ConvertRGBtoHex(Math.round(rgb[0]*1)/1, Math.round(rgb[1]*1)/1, Math.round(rgb[2]*1)/1)));
        

        So kommen bei mir sinnvolle Werte raus:

        script.js.common.DEV.Beispiele.HSV2HEX: [ 121.64444444444442, 255, 0 ]
        script.js.common.DEV.Beispiele.HSV2HEX: #7aff00
        

        a1d572e2-a57c-4903-a06b-ae9c77408fba-image.png

        Würde bedeuten
        hsv2rgb(enhancehue/360, saturation/254 , 1)

        value immer auf 1

        P.S.: Was ist denn das für ein Adapter, der so merkwürdige Werte liefert?

        T Offline
        T Offline
        tklein
        schrieb am zuletzt editiert von
        #14

        @armilar said in HUE Farbwert (HSV?) nach HEX konvertieren:

        function ConvertRGBtoHex(red, green, blue) {

        das ist der zigbee adapter.

        Ich komme leider immer noch nicht weiter :-(

        Ausgabe:

        fd6dd193-9365-4b2e-86e2-8ff2f55cfb46-grafik.png

        Funktion:
        30796049-62c8-4055-83e9-24eb5a4885ca-grafik.png

        AsgothianA 1 Antwort Letzte Antwort
        0
        • T tklein

          @armilar said in HUE Farbwert (HSV?) nach HEX konvertieren:

          function ConvertRGBtoHex(red, green, blue) {

          das ist der zigbee adapter.

          Ich komme leider immer noch nicht weiter :-(

          Ausgabe:

          fd6dd193-9365-4b2e-86e2-8ff2f55cfb46-grafik.png

          Funktion:
          30796049-62c8-4055-83e9-24eb5a4885ca-grafik.png

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

          @tklein sagte in HUE Farbwert (HSV?) nach HEX konvertieren:

          Hallo,

          wie kann ich aus den Werten

          {
            "type": "commandEnhancedMoveToHueAndSaturation",
            "data": {
              "enhancehue": 32896,
              "saturation": 254,
              "transtime": 5
            },
          

          eine HEX-Wert konvertieren? Ist das angegebene Format im JSON HSV?

          Falls ja, ist die Zuordnung so korrekt?

          • H = enhancehue

          • S = saturation

          • V = transtime

          Nebenbei, die Segmente des “HSV” Modells heißen Hue, Saturation, Value.

          Die transtime ist bei dem verwendeten Befehl eine Zeit in der der Wechsel stattfinden soll.

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

          T 1 Antwort Letzte Antwort
          0
          • AsgothianA Asgothian

            @tklein sagte in HUE Farbwert (HSV?) nach HEX konvertieren:

            Hallo,

            wie kann ich aus den Werten

            {
              "type": "commandEnhancedMoveToHueAndSaturation",
              "data": {
                "enhancehue": 32896,
                "saturation": 254,
                "transtime": 5
              },
            

            eine HEX-Wert konvertieren? Ist das angegebene Format im JSON HSV?

            Falls ja, ist die Zuordnung so korrekt?

            • H = enhancehue

            • S = saturation

            • V = transtime

            Nebenbei, die Segmente des “HSV” Modells heißen Hue, Saturation, Value.

            Die transtime ist bei dem verwendeten Befehl eine Zeit in der der Wechsel stattfinden soll.

            T Offline
            T Offline
            tklein
            schrieb am zuletzt editiert von
            #16

            @asgothian

            hi,

            ob das ein hsv wert ist, kann ich leider nicht sagen. Ich bekomme nur das json aus dem zigbee adapter für die fernbedienung. Eigentlich ist es nicht das korrekte modell. Meine wird derzeit nicht unterstützt. Die Befehle scheinen
            jedoch idenitsch zu sein.

            1803ba11-bd55-42ed-a1f9-6a9461c4aa50-grafik.png

            19acc3d4-f008-4352-a002-a1b5173c4fba-grafik.png

            Ist V denn nun mit Value = Transtime?

            LG
            Thomas

            HomoranH 1 Antwort Letzte Antwort
            0
            • T tklein

              @asgothian

              hi,

              ob das ein hsv wert ist, kann ich leider nicht sagen. Ich bekomme nur das json aus dem zigbee adapter für die fernbedienung. Eigentlich ist es nicht das korrekte modell. Meine wird derzeit nicht unterstützt. Die Befehle scheinen
              jedoch idenitsch zu sein.

              1803ba11-bd55-42ed-a1f9-6a9461c4aa50-grafik.png

              19acc3d4-f008-4352-a002-a1b5173c4fba-grafik.png

              Ist V denn nun mit Value = Transtime?

              LG
              Thomas

              HomoranH Nicht stören
              HomoranH Nicht stören
              Homoran
              Global Moderator Administrators
              schrieb am zuletzt editiert von
              #17

              @tklein sagte in HUE Farbwert (HSV?) nach HEX konvertieren:

              Transtime

              ist die Zeit für den Übergang zur neuen Einstellung.
              hat nichts mit dem Farbwert zu tun

              kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

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

              der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

              T 1 Antwort Letzte Antwort
              0
              • HomoranH Homoran

                @tklein sagte in HUE Farbwert (HSV?) nach HEX konvertieren:

                Transtime

                ist die Zeit für den Übergang zur neuen Einstellung.
                hat nichts mit dem Farbwert zu tun

                T Offline
                T Offline
                tklein
                schrieb am zuletzt editiert von
                #18

                @homoran dann fehlt mir also der wert vom "v", um einen rgb bzw hex wert berechnen zu können so wie es aussieht

                HomoranH AsgothianA 2 Antworten Letzte Antwort
                0
                • T tklein

                  @homoran dann fehlt mir also der wert vom "v", um einen rgb bzw hex wert berechnen zu können so wie es aussieht

                  HomoranH Nicht stören
                  HomoranH Nicht stören
                  Homoran
                  Global Moderator Administrators
                  schrieb am zuletzt editiert von
                  #19

                  @tklein sagte in HUE Farbwert (HSV?) nach HEX konvertieren:

                  @homoran dann fehlt mir also der wert vom "v", um einen rgb bzw hex wert berechnen zu können so wie es aussieht

                  nein! den hast du anscheinend
                  https://de.m.wikipedia.org/wiki/HSV-Farbraum

                  kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

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

                  der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                  1 Antwort Letzte Antwort
                  0
                  • T tklein

                    @homoran dann fehlt mir also der wert vom "v", um einen rgb bzw hex wert berechnen zu können so wie es aussieht

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

                    @tklein Normalerweise wird der “brightness” Wert als “V” im HSV Modell genutzt, wobei du schauen musst ob der 0-1 oder 0-100 ist.

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

                    T 1 Antwort Letzte Antwort
                    0
                    • AsgothianA Asgothian

                      @tklein Normalerweise wird der “brightness” Wert als “V” im HSV Modell genutzt, wobei du schauen musst ob der 0-1 oder 0-100 ist.

                      T Offline
                      T Offline
                      tklein
                      schrieb am zuletzt editiert von
                      #21

                      @asgothian sorry, aber da bin ich momentan bildungsresistent. Wo finde ich denn den Wert, oder kann ich den immer mit 1 annehmen, so wie @Armilar geschrieben hatte?

                      1 Antwort Letzte Antwort
                      0
                      • HomoranH Nicht stören
                        HomoranH Nicht stören
                        Homoran
                        Global Moderator Administrators
                        schrieb am zuletzt editiert von
                        #22

                        @tklein sagte in HUE Farbwert (HSV?) nach HEX konvertieren:

                        finde ich denn den Wert

                        @asgothian sagte in HUE Farbwert (HSV?) nach HEX konvertieren:

                        brightness

                        ist doch auch bei dir

                        @tklein sagte in HUE Farbwert (HSV?) nach HEX konvertieren:

                        sein.

                        im Screenshot

                        kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

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

                        der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                        1 Antwort Letzte Antwort
                        0
                        • ArmilarA Armilar

                          @tklein

                          function hsv2rgb(hue, saturation, value) {
                              hue /= 60;
                              let chroma = value * saturation;
                              let x = chroma * (1 - Math.abs((hue % 2) - 1));
                              let rgb = hue <= 1 ? [chroma, x, 0] :
                                  hue <= 2 ? [x, chroma, 0] :
                                      hue <= 3 ? [0, chroma, x] :
                                          hue <= 4 ? [0, x, chroma] :
                                              hue <= 5 ? [x, 0, chroma] :
                                                  [chroma, 0, x];
                           
                              return rgb.map(v => (v + value - chroma) * 255);
                          }
                          
                          
                          function ConvertRGBtoHex(red, green, blue) {
                              return '#' + ColorToHex(red) + ColorToHex(green) + ColorToHex(blue);
                          }
                          
                          //Helper
                          function ColorToHex(color) {
                              let hexadecimal = color.toString(16);
                              return hexadecimal.length == 1 ? '0' + hexadecimal : hexadecimal;
                          }
                          
                          let enhancehue = 32896;
                          let saturation = 254;
                          let transtime =  5;
                          log(hsv2rgb(enhancehue/360, saturation/254 , 1))
                          let rgb = hsv2rgb(enhancehue/360, saturation/254, 1)
                          log(String(ConvertRGBtoHex(Math.round(rgb[0]*1)/1, Math.round(rgb[1]*1)/1, Math.round(rgb[2]*1)/1)));
                          

                          So kommen bei mir sinnvolle Werte raus:

                          script.js.common.DEV.Beispiele.HSV2HEX: [ 121.64444444444442, 255, 0 ]
                          script.js.common.DEV.Beispiele.HSV2HEX: #7aff00
                          

                          a1d572e2-a57c-4903-a06b-ae9c77408fba-image.png

                          Würde bedeuten
                          hsv2rgb(enhancehue/360, saturation/254 , 1)

                          value immer auf 1

                          P.S.: Was ist denn das für ein Adapter, der so merkwürdige Werte liefert?

                          ArmilarA Offline
                          ArmilarA Offline
                          Armilar
                          Most Active Forum Testing
                          schrieb am zuletzt editiert von
                          #23

                          @armilar sagte in HUE Farbwert (HSV?) nach HEX konvertieren:

                          hsv2rgb(enhancehue/360, saturation/254 , 1)

                          wie schon beschrieben müsste

                          • H = enhancedhue durch 360 geteilt werden
                          • S = saturation durch 254 geteilt werden oder direkt mit 1 in die Funktion (= sattere Farben)
                          • V = 1 (immer)

                          ein akzeptables Ergebnis liefern...

                          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.

                          T 1 Antwort Letzte Antwort
                          0
                          • ArmilarA Armilar

                            @armilar sagte in HUE Farbwert (HSV?) nach HEX konvertieren:

                            hsv2rgb(enhancehue/360, saturation/254 , 1)

                            wie schon beschrieben müsste

                            • H = enhancedhue durch 360 geteilt werden
                            • S = saturation durch 254 geteilt werden oder direkt mit 1 in die Funktion (= sattere Farben)
                            • V = 1 (immer)

                            ein akzeptables Ergebnis liefern...

                            T Offline
                            T Offline
                            tklein
                            schrieb am zuletzt editiert von
                            #24

                            @armilar dann brauche ich deine komplexere hsv2rgb funktion gar nicht?

                            ArmilarA 1 Antwort Letzte Antwort
                            0
                            • T tklein

                              @armilar dann brauche ich deine komplexere hsv2rgb funktion gar nicht?

                              ArmilarA Offline
                              ArmilarA Offline
                              Armilar
                              Most Active Forum Testing
                              schrieb am zuletzt editiert von
                              #25

                              @tklein

                              Der Umweg geht von HSV nach RGB nach HEX

                              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.

                              1 Antwort Letzte Antwort
                              0
                              Antworten
                              • In einem neuen Thema antworten
                              Anmelden zum Antworten
                              • Älteste zuerst
                              • Neuste zuerst
                              • Meiste Stimmen


                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              868

                              Online

                              32.5k

                              Benutzer

                              81.8k

                              Themen

                              1.3m

                              Beiträge
                              Community
                              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                              ioBroker Community 2014-2025
                              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