Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Entwicklung
    4. [Diskussion] Objektdefinition Licht

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [Diskussion] Objektdefinition Licht

    This topic has been deleted. Only users with topic management privileges can see it.
    • Jey Cee
      Jey Cee Developer @carsten04 last edited by Jey Cee

      @carsten04 sagte in [Diskussion] Objektdefinition Licht:

      Wo ich eher Bedarf sehe wäre ein recht generischer Colorpicker für vis,

      Das halte ich für zu Kurz gedacht, es gibt auch andere Visualisierungen und daneben noch IOT. Die haben davon gar nichts.

      Beim deConz Adapter habe ich versucht mich an das zu halten was vorgegeben ist. Aber auch wenn ich das zu 100% geschafft hätte, hilft das nichts wenn alle anderen was anderes machen.
      Das Thema iot Kompatibilität ist dann immer wieder hoch gekommen. Also wollte ich wissen wie ich es denn jetzt richtig machen muss. Dabei kam dieses Thema heraus.
      Es gibt Aktuell kein richtig, bestenfalls eine Praktisch orientierte Lösung damit es halt funktioniert.

      Als Entwickler finde ich es oft nervig mich an solche vorgaben zu halten, anderer Seits kann es die Entwicklung auch beschleunigen wenn man auf fertiges oder wenigstens gute Beispiele zurück greifen kann.
      Als Nutzer wäre es mir schon zu blöd mich damit zu beschäftigen warum es mal Level zum Dimmen gibt und mal brightness.

      @Meistertr sagte in [Diskussion] Objektdefinition Licht:

      Bei Yeelight meine ich mich zu erinner, dass ich nicht alles mit den Vorgaben abbilden konnte.

      Das ist eine Sache die genau mit dieser Diskussion hier verbessert werden soll.

      1 Reply Last reply Reply Quote 0
      • Meistertr
        Meistertr Developer last edited by

        Ich bin auch für level.color.HEX color als Standard. Das würde saturation ja eigentlich überflüssig machen oder? Damit lässt sich ja eigentlich alles abbilden. Vll auch wie im Web mit Eingabe von blue, yellow... Ich hab keine rgbw Lampen welche states braucht man da zwingend?
        Eine Tabelle wäre für die Übersicht doch nicht schlecht. Mit links Lampentypen oben states und in den Zellen die Vorgaben. Soll ich mich daran mal versuchen?

        Jey Cee Asgothian 2 Replies Last reply Reply Quote 0
        • Jey Cee
          Jey Cee Developer @Meistertr last edited by

          @Meistertr sagte in [Diskussion] Objektdefinition Licht:

          Soll ich mich daran mal versuchen?

          Ja das wäre Hilfreich.

          1 Reply Last reply Reply Quote 0
          • carsten04
            carsten04 Developer last edited by carsten04

            @Jey-Cee Der Anpassungsaufwand wäre bei mir schon ziemlich hoch. Dies liegt zum einen daran, dass bei Änderung von brightness, hue, satuation, RGB auch jeweils immer die korrespondierenden Werte angepasst werden und zum anderen der Adapter für diverse milight Bulbs funktioniert, d.h. white, RGB, rgbw, fullColor für die iBox1,2 in den Varianten 4 und 8 Channel und auch für den alten milight Adapter mit white, rgb und rgbw. Darüber hinaus müsste ich auch die App (pwa) die auf nuxt basiert (vue framework) an etlichen Stellen anpassen. Also mal eben nur ein paar Zeilen Code ändern, damit ist es definitiv nicht getan. Das gilt mit Sicherheit auch für einige der aufgezählten Adapter. Du solltest also eine mögliche Standardisierung sehr sorgfältig und mit Bedacht angehen, nicht das hinterher fast keiner der Adapter mehr richtig läuft.

            1 Reply Last reply Reply Quote 0
            • Meistertr
              Meistertr Developer last edited by

              Es gibt Adapter da hast du hue, sat, HEX und rgb als Eingabe das ist meiner Meinung nach vollkommen überflüssig. Naja zur Zeit braucht man es vieicht, weil das eine nur mit HUe und das andere nur mit HEX geht. Aber darum geht es ja hier, einen gemeinsamen Nenner zu finden.

              1 Reply Last reply Reply Quote 0
              • carsten04
                carsten04 Developer last edited by

                @Meistertr Ich finde ein guter color-Adapter sollte immer die Möglichkeit haben mit RGB und HSV, also hue, saturation und brightness gleichermaßen umgehen zu können. Manchmal möchtest Du z.B. nur die saturation ändern, dann wäre es doch wenig hilfreich, wenn nur ein rgb-state da wäre. Beispiel lässt sich auch auf alle anderen Kombinationen anwenden.

                1 Reply Last reply Reply Quote 0
                • Meistertr
                  Meistertr Developer last edited by Meistertr

                  im Prinzip gibt es ja auch garnicht so viele verschiedene Typen,

                  es sind ja nur:
                  -Standard

                  • Standard mit dimm
                  • Standard mit dimm und ct
                  • Rgb
                  • Rgbw
                  • Rgbww

                  und das dann natürlich mit zahlreichen Sonderfunktionen

                  s.bormann 1 Reply Last reply Reply Quote 0
                  • s.bormann
                    s.bormann Most Active @Meistertr last edited by

                    @Meistertr sagte in [Diskussion] Objektdefinition Licht:

                    im Prinzip gibt es ja auch garnicht so viele verschiedene Typen,

                    es sind ja nur:
                    -Standard

                    • Standard mit dimm
                    • Standard mit dimm und ct
                    • Rgb
                    • Rgbw
                    • Rgbww

                    und das dann natürlich mit zahlreichen Sonderfunktionen

                    Milight hat noch
                    RGB + W (entweder rgb oder w, aber nicht beides zusammen) - und das RGB darf nur vollgesättigte Farben enthalten (nur die Farben, die im hue Farbkreis enthalten sind).

                    Jey Cee 1 Reply Last reply Reply Quote 0
                    • Asgothian
                      Asgothian Developer @Meistertr last edited by

                      @Meistertr sagte in [Diskussion] Objektdefinition Licht:

                      Ich bin auch für level.color.HEX color als Standard. Das würde saturation ja eigentlich überflüssig machen oder? Damit lässt sich ja eigentlich alles abbilden. Vll auch wie im Web mit Eingabe von blue, yellow... Ich hab keine rgbw Lampen welche states braucht man da zwingend?

                      Dem kann ich so nicht zustimmen. Sofern eine Hardware nicht selber eine saubere Umrechnung von RGB auf HSV und CT macht, und dabei die Wellenlängen der einzelnen LED's berücksichtigt bedeutet ein Entfernen von HSV Datenpunkten das Lampen unterschiedlicher Hersteller sich nicht ohne weiteres auf die gleiche Farbe einstellen lassen.

                      Das ist aktuell schon so, da nicht jeder Hersteller da sauber arbeitet, aber ich denke wir sollten im ioBroker keine unnötigen Grenzen einfügen die dieses Problem verschärfen.

                      1 Reply Last reply Reply Quote 0
                      • Jey Cee
                        Jey Cee Developer @s.bormann last edited by

                        RGB + W (entweder rgb oder w, aber nicht beides zusammen) - und das RGB darf nur vollgesättigte Farben enthalten (nur die Farben, die im hue Farbkreis enthalten sind).

                        RGBW lässt sich halt sehr Flexibel mit den getrennten werten r, g, b, w darstellen, deshalb ist mein Vorschlag ja auf den verketetten rgb(w) zu verzichten. Was das jetzt für auswirkungen auf vollgesättigte Farben hat ist mir nicht klar.

                        Außer der bisherigen Diskussion geht für mich hervor das es Sinnvoll ist RGBW und HSL zur verfügung zu stellen.
                        HSL ist für mich Komplex und RGBW eher einfach. Damit sollten sich doch die meissten fälle Abdecken lassen?

                        s.bormann 2 Replies Last reply Reply Quote 0
                        • Bluefox
                          Bluefox @Jey Cee last edited by Bluefox

                          @Jey-Cee Man kann das aber auf Adaperebene implementieren.
                          Adapter merkt selbst, was da (bevor auf 0 gesetzt wurde) stand und dann bei "ein" wieder gespeicherten Wert setzten.
                          Habe sogar irgendwo so implementiert

                          1 Reply Last reply Reply Quote 0
                          • Bluefox
                            Bluefox @s.bormann last edited by

                            Участник @s-bormann написал в [Diskussion] Objektdefinition Licht:

                            Hi, ein Adapter wie linkedDevices oder Devices ( @Scrounger: Habe mich im Übrigen auch gefragt, ob das nicht genau auf das gleiche hinausläuft?)

                            Ist tatsächlich das gleiche. Nur:

                            • "linkeddevices" hat die Logik in einem Adapter drin
                            • "devices" hat die logik in js-controller 2.x über aliases. (Da wird es nicht möglich ein/aus Logik zu implementieren).

                            BTW: in devices kann man die Geräte auch mit linkeddevices Adapter erzeugen.

                            Ich bin der Meinung, dass die Adapter die ein/aus Logik mitbringen müssen, falls es geht. Weil z.B. bei mqtt, modbus, opc, snpm, s7, .. wird es nicht möglich sein.

                            1 Reply Last reply Reply Quote 0
                            • Bluefox
                              Bluefox last edited by Bluefox

                              Also. Die Liste mit wie ein Gerät (und welche Geräte) aussehen muss, gibt es.
                              Allerdings, das ist aktuell nicht in Form von einer Liste, sondern wie Regex Rules.

                              Man muss nur diese Tabelle lesen können:
                              https://github.com/ioBroker/ioBroker.type-detector/blob/master/index.js#L101

                              Dazu es gibt roles für states und für channels/devices. Die sollte man auch nicht vermischen. Allerdings, die channel roles werden aktuell nirgendwo verwendet.

                              1 Reply Last reply Reply Quote 0
                              • s.bormann
                                s.bormann Most Active @Jey Cee last edited by

                                @Jey-Cee sagte in [Diskussion] Objektdefinition Licht:

                                RGB + W (entweder rgb oder w, aber nicht beides zusammen) - und das RGB darf nur vollgesättigte Farben enthalten (nur die Farben, die im hue Farbkreis enthalten sind).

                                RGBW lässt sich halt sehr Flexibel mit den getrennten werten r, g, b, w darstellen, deshalb ist mein Vorschlag ja auf den verketetten rgb(w) zu verzichten. Was das jetzt für auswirkungen auf vollgesättigte Farben hat ist mir nicht klar.

                                Außer der bisherigen Diskussion geht für mich hervor das es Sinnvoll ist RGBW und HSL zur verfügung zu stellen.
                                HSL ist für mich Komplex und RGBW eher einfach. Damit sollten sich doch die meissten fälle Abdecken lassen?

                                Hi,
                                nur noch mal der Vollständigkeit halber die Erklärung zu Milight: In der Version 5 beherrschen die Lampen nur vollgesättigte Farben, d.h. man KANN gar nicht alle RGB-Farben darstellen. Z.B. #FFFF00 geht, aber #FFFFBB geht nicht, weil nicht voll gesättigt. Einfach gesagt, es dürfen maximal zwei der drei Farben R, G und B gleichzeitig aktiv sein. Warum es diese Einschränkung gibt, ist mir nicht klar - ich vermute aber mal, dass das Protokoll technisch lediglich einen HUE-Wert und keine Sättigung überträgt.

                                LG

                                1 Reply Last reply Reply Quote 0
                                • s.bormann
                                  s.bormann Most Active @Jey Cee last edited by

                                  @Jey-Cee sagte in [Diskussion] Objektdefinition Licht:

                                  RGB + W (entweder rgb oder w, aber nicht beides zusammen) - und das RGB darf nur vollgesättigte Farben enthalten (nur die Farben, die im hue Farbkreis enthalten sind).

                                  RGBW lässt sich halt sehr Flexibel mit den getrennten werten r, g, b, w darstellen, deshalb ist mein Vorschlag ja auf den verketetten rgb(w) zu verzichten. Was das jetzt für auswirkungen auf vollgesättigte Farben hat ist mir nicht klar.

                                  Außer der bisherigen Diskussion geht für mich hervor das es Sinnvoll ist RGBW und HSL zur verfügung zu stellen.
                                  HSL ist für mich Komplex und RGBW eher einfach. Damit sollten sich doch die meissten fälle Abdecken lassen?

                                  Noch mal Hi,

                                  zum Thema HSL:
                                  Ich finde HSB (oder HSV, das ist das Gleiche) deutlich sinnvoller als Licht-Farbraum.

                                  Bei Bildschirmfarben mag das anders sein, da geht HSL gut, aber bei Licht würde der "L"-Regler für volle Farben immer bei 50% stehen müssen. In die eine Richtung wirds schwarz (das wäre aber ja aber schon bei den meisten Lampen über den LEVEL-Datenpunkt abgedeckt = Dimmer!) und in die andere Richtung wirds weiß (was wiederum eine Überschneidung mit dem Sättigungs-Regler bedeutet).

                                  Bei HSB oder HSV hat man Hue, Saturation und Brightness = Value = Dimmer oder LEVEL, was ziemlich genau der Funktionsart der meisten RGB-Lampen entsprechen dürfte.

                                  LG!

                                  1 Reply Last reply Reply Quote 0
                                  • Zefau
                                    Zefau last edited by

                                    Auf Basis des Issues von @Jey-Cee im hue-extended Adapter (siehe https://github.com/Zefau/ioBroker.hue-extended/issues/1#issue-492034971), ergeben sich folgenden Änderungen.

                                    1. Umbenennung von bri in brightness Entfernen des Datenpunkts bri (brightness) (zur Steuerung verbleibt dann level)
                                    2. Umbenennung von sat in saturation
                                    3. Entfernen des Datenpunkts hue (Wert von 0 bis 65535) und Umbenennung von hue_degrees (Wert von 0° bis 360°) in hue
                                    4. Alle Datenpunkte für die Farbräume entfernen (_rgb, _hsv, _cmyk und xyz)
                                    5. Einzelne Datenpunkte des RGB-Farbraums aufnehmen (red, green und blue )
                                    6. Umbenennen von _hex in hex

                                    https://forum.iobroker.net/topic/24207/neuer-adapter-hue-extended/239

                                    Jey-Cee created this issue in Zefau/ioBroker.hue-extended

                                    closed Objektdefinition #1

                                    1 Reply Last reply Reply Quote 0
                                    • Jey Cee
                                      Jey Cee Developer last edited by

                                      @Dr-Bakterius sagte in [Neuer Adapter] hue-extended:

                                      Für mich würden diese Änderungen passen weil ich diese Datenpunkte nicht verwende. Aber falls jemand die Datenpunkte in Skripten eingebaut hat, bedeutet das Arbeit.

                                      @cash sagte in [Neuer Adapter] hue-extended:

                                      Gegen die Umbenennung spricht nichts aber mir persönlich scheint es vollkommen egal ob ein Punkt nun sat oder saturation heißt. Grundsätzlich finde ich es natürlich sinnvoll nutzlose oder nicht benötigte Datenpunkte zu löschen.

                                      @Spegeli sagte in [Neuer Adapter] hue-extended:

                                      Bitte keine Datenpunkte Entfernen.
                                      Das war für mich überhaupt erst einer Gründe auf diesen Adapter Umzusteigen, da ich hier so ziemlich jeden Datenpunkte habe den es gibt.
                                      Lieber haben und nicht brauchen, als brauchen und nicht haben.
                                      Einen (spürbaren) performance boost du die paar wegfallenden Datenpunkte hätte man doch ohnehin nicht.

                                      @Jey-Cee sagte in [Neuer Adapter] hue-extended:

                                      Hier mal der Hintergrund für die von mir angestoßene Diskussion bzw. den Vorstoß.
                                      Bis jetzt ist es so das jeder macht was für ihn gerade gut passt, aber das macht die Verwendung oft unnötig Kompliziert. Ein gutes Beispiel sind die Color Picker, da bedarfs x Unterschiedlicher in VIS um alles ab zu decken. Jetzt gibt es aber auch andere Visualisierungen und daneben noch die Smarten Assistenten, die alle damit Klar kommen sollen.
                                      Um das zu Gewährleisten muss jeder Entwickler der Visualisierung macht für jeden fall etwas bereit stellen.
                                      Ganz davon abgesehen das man sich als Anwender immer in jeden Adapter neu einfinden muss wenn man eine Lampe steuern will.
                                      @cash sagte in [Neuer Adapter] hue-extended:

                                      mir persönlich scheint es vollkommen egal ob ein Punkt nun sat oder saturation heißt

                                      Es ist auch vollkommen egal wie der Datenpunkt heißt, nur kann man als Anwender doch erwarten das ein Datenpunkt der das selbe tut auch in allen Adaptern gleich heisst oder nicht?
                                      Ich erwarte das sogar als Anwender.
                                      @Spegeli sagte in [Neuer Adapter] hue-extended:

                                      Das war für mich überhaupt erst einer Gründe auf diesen Adapter Umzusteigen, da ich hier so ziemlich jeden Datenpunkte habe den es gibt.

                                      Es soll nicht die Funktionalität eingeschränkt werden, lediglich eine Einheitliche Basis geschaffen werden zur Steuerung. Unter dem Gesichtspunkt das nicht jede Lampe/Licht das selbe Farbsystem verwendet soll der Adapter dann im Hintergrund die Umsetzung auf die jeweiligen Farbsysteme vornehmen. Was ohnehin schon in manchen Adaptern passiert.

                                      cash 1 Reply Last reply Reply Quote 0
                                      • AlCalzone
                                        AlCalzone Developer last edited by

                                        Ich habe nicht alles gelesen, aber grundsätzlich ein paar Gedanken.
                                        Hue/Sat/Bri ist für Menschen intuitiver als RGB und sollte wenn möglich bevorzugt werden. Hex (0-FF) ist zwar wiederum ein web standard, aber auch wieder unintuitiver als 0-255.

                                        0-254 für Helligkeit ist durch die Protokolle vorgegeben (zwave und zigbee), gerade bei zwave wird tatsächlich aber nur 0-99 genutzt.
                                        Hier macht ein mapping Sinn, allerdings sollte dann vernünftig gerundet werden.
                                        Beim runden (zb wenn alles auf 0-100% soll) muss man wiederum aufpassen, dass die Genauigkeit nicht leidet. Es gibt sicher Anwendungen wo mehr als 8 bit für Farben nötig und sinnvoll sind.

                                        Gegenfrage: ist es ggf sinnvoll die Umrechnung zwischen % und absolut dem controller zu überlassen? Sofern die datenpunkte sauber mit min (=0%) und max (=100%) versehen sind, sollte das unkompliziert gehen.

                                        Bei der vorgabe eines schemas sollte wiederum beachtet werden dass es immer Spezialfälle geben wird, die zb Hardwarebedingt nicht 100% passen werden. Ggf sollte man hierfür eine konvention vorsehen, zb einen raw channel o.ä.

                                        1 Reply Last reply Reply Quote 1
                                        • cash
                                          cash Most Active @Jey Cee last edited by

                                          @Jey-Cee Grundsätzlich kann ich es verstehen und halte es auch für sinnvoll. Wichtig wäre halt das ein einheitliche Benennung nicht irgendwelche Sachen einschränkt die zwar von Hue vorgesehen sind aber eben nicht von anderen Anbietern. Ich bin aber nicht so tief in der Materie um mir da ein Urteil zu erlauben.

                                          Als Anwender erwarte ich es nicht. Guck Dir die Autobranche an. Überall ist es Allradantrieb nur heißt es bei Audi Quadro, bei Mercedes 4matic und bei BMW noch einmal anders.
                                          D er. Kombi heißt Avant oder. T-Modell. Für jeden Quatsch (im positiven Sinne, da ich all die Helferein sehr schätze) hat Mercedes eigene schöne Namen.

                                          Einheitlich ist nicht. Ich fände es sehr komisch wenn die Datenpunkte z. B. bei Homematic anders lauten würden als ich Sie selber per Script auf der ccu abfragen kann und dort benutzen muss. Eigentlich sollte das dann auch für alle anderen Adapter gelten.

                                          Evtl sollte es also einmal die Rohdaten geben also org das wie der Hersteller die Daten liefert und einmal einheitlich?

                                          Ja natürlich ist das ein Problem für VIS. Die Frage ist halt wo das zu lösen ist.

                                          Ich nutze VIS nur sehr eingeschränkt und schalte eigentlich nicht damit, da bei mir alles automatisch passiert.

                                          Zefau 1 Reply Last reply Reply Quote 0
                                          • Zefau
                                            Zefau @cash last edited by

                                            Wurde auf Basis dieser Diskussion eigl. bereits irgendein Adapter angepasst?

                                            Mic 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            575
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            adapter
                                            22
                                            58
                                            6312
                                            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