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. [gelöst] Farbe aus R/G/B rechnet falsch

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.3k

[gelöst] Farbe aus R/G/B rechnet falsch

Geplant Angeheftet Gesperrt Verschoben Blockly
blocklyjavascript
3 Beiträge 2 Kommentatoren 123 Aufrufe 2 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.
  • Dr. BakteriusD Online
    Dr. BakteriusD Online
    Dr. Bakterius
    Most Active
    schrieb am zuletzt editiert von Dr. Bakterius
    #1

    Hallo!

    Ich habe mir eine Aquariumbeleuchtung mit RGBCCT-LED-Streifen gebaut. Zu unterschiedlichen Tageszeiten sollen bestimmte RGB Farben und Warm- bzw. Kaltweiß dargestellt werden.

    Dazu habe ich mir mit Zigbee2MQTT die Farben und Helligkeiten so eingestellt wie ich sie haben möchte und die Werte in mein Skript übernommen.

    So kann man praktisch die Farbmischung in RGB einstellen. Um die Farbe an dem Controller zu ändern, benötige ich aber den Hex-Wert. Dafür gibt es doch in Blockly den Baustein 'Farbe aus...". Man übergibt die RGB-Werte in Dezimal und erhält als Ergebnis den Hex-Wert.

    Sollte man denken! Die Farben die mein Skript produzierte unterschieden sich teil enorm von der manuell eingestellten Farbe. Also habe ich mir mal die Ergebnisse angesehen und mit den errechneten Hex-Werten verglichen und habe festgestellt, dass der Block falsch umrechnet.

    Ich habe mir also selbst eine kleine Javascript-Funktion geschrieben und die Ausgabe verglichen:

    function prependZeroIfSingleChar(text) {
      return text.length === 1 ? "0" + text : text;
    }
    
    RED = prependZeroIfSingleChar(R.toString(16));
    GREEN = prependZeroIfSingleChar(G.toString(16));
    BLUE = prependZeroIfSingleChar(B.toString(16));
    return "#"+RED+GREEN+BLUE;return 0;
    

    Screenshot 2025-11-25 102502.png

    Das Ergebnis sieht dann so aus:
    Screenshot 2025-11-25 101249.png

    Hat das schon jemand beobachtet oder kann es nachvollziehen? Was läuft da falsch?

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

      So richtig werde ich aus dem was du gepostet hast nicht schlau

      Poste doch mal bitte folgendes:

      • Debug Output vom Ergebnis von deiner Funktion RGB2HEX mit festen R/G/B Werten (nicht variablen, einfach direkt eingeklickt)
      • Debug Output vom Baustein 'Farbe aus rgb' mit den gleichen festen R/G/B Werten (wieder nicht aus variablen, sondern direkt mit Zahlen)

      Ansonsten würde ich deine Funktion noch etwa anpassen:

      function prependZeroIfSingleChar(text) {
        return text.length === 1 ? "0" + text : text;
      }
      
      const RED = prependZeroIfSingleChar(R.toString(16));
      const GREEN = prependZeroIfSingleChar(G.toString(16));
      const BLUE = prependZeroIfSingleChar(B.toString(16));
      return "#"+RED+GREEN+BLUE;return 0;
      

      A.

      Nachtrag: Schau Dir den Baustein Farbe aus rgb bitte auch mal genau an. ggf. erwartet dieser die farbwerte in %, nicht 0-255

      A.

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

      Dr. BakteriusD 1 Antwort Letzte Antwort
      1
      • AsgothianA Asgothian

        So richtig werde ich aus dem was du gepostet hast nicht schlau

        Poste doch mal bitte folgendes:

        • Debug Output vom Ergebnis von deiner Funktion RGB2HEX mit festen R/G/B Werten (nicht variablen, einfach direkt eingeklickt)
        • Debug Output vom Baustein 'Farbe aus rgb' mit den gleichen festen R/G/B Werten (wieder nicht aus variablen, sondern direkt mit Zahlen)

        Ansonsten würde ich deine Funktion noch etwa anpassen:

        function prependZeroIfSingleChar(text) {
          return text.length === 1 ? "0" + text : text;
        }
        
        const RED = prependZeroIfSingleChar(R.toString(16));
        const GREEN = prependZeroIfSingleChar(G.toString(16));
        const BLUE = prependZeroIfSingleChar(B.toString(16));
        return "#"+RED+GREEN+BLUE;return 0;
        

        A.

        Nachtrag: Schau Dir den Baustein Farbe aus rgb bitte auch mal genau an. ggf. erwartet dieser die farbwerte in %, nicht 0-255

        A.

        Dr. BakteriusD Online
        Dr. BakteriusD Online
        Dr. Bakterius
        Most Active
        schrieb am zuletzt editiert von
        #3

        @Asgothian sagte in Farbe aus R/G/B rechnet falsch:

        ggf. erwartet dieser die farbwerte in %, nicht 0-255

        Danke, das war's.

        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

        787

        Online

        32.6k

        Benutzer

        82.2k

        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