Kein Dimmwert von 0% möglich?!

  • Hallo,

    ich habe seit Heute ein kleines Problem mit 2 meiner Shelly Dimmer:

    Ich kann den Dimmwert nicht auf 0% setzen - dieser springt bei setzen auf 0% immer zurück auf den vorherigen Wert und Minimum auf 1% :cursing:

    FW: 20210115-103919/v1.9.4@e2732e05

    Hat hierzu Jemand eine Info?

    Das ganze konnte ich im IOBroker bei der Steuerung zwar mit einem Alias kompensieren:

    Code
    "id": "shelly.0.SHDM-1#D47C19#1.lights.brightness",
    "write": "val <= 1 ? 1 : Math.round(val*10)/10",
    "read": "val <= 1 ? 0 : Math.round(val*10)/10"


    Trotzdem seltsam - wieso gehen die Dimmer nicht auf 0% ?


    Danke

    Grüße

    Michael Dolp

  • Zur hilfreichsten Antwort springen
  • Was hat das für einen Sinn? 0 ist aus, sende den entsprechenden Befehl für aus.

    Zudem musst du beachten, ob die Lampen sich so weit dimmen lassen, ansonsten stellt man eh "Minimum Brightness" ein, unter den dann nicht gedimmt werden kann.

  • Was hat das für einen Sinn? 0 ist aus, sende den entsprechenden Befehl für aus.

    Zudem musst du beachten, ob die Lampen sich so weit dimmen lassen, ansonsten stellt man eh "Minimum Brightness" ein, unter den dann nicht gedimmt werden kann.

    Danke für die Antwort.

    Das was Du sagst macht natürlich Sinn, aber wenn man den Dimmer über die Dimmwerte steuert, dann läuft der Prozess normal über einen Datenpunkt ( hier "brightness" ).

    Z.B.
    System Dimmer "AN" > Shelly "brightness" 100%
    System Dimmer "30%" > Shelly "brightness" 30%
    System Dimmer "AUS" > Shelly "brightness" 0%

    Hat man eine wie von Dir beschriebene physische "Dimrage" von z.B. 23-64% so rechnet man diese im Normalfall über ein Alias um, sodass das Alias von 0-100% geht und der Dimmer entsprechend von 23-65% also 1% = 23% / 100% = 64%.


    Alias / Umrechnung:
    "write": "val <= 0 ? 0 : Math.round(0.41 * val + 23)",

    "read": "val < 23 ? 0 : Math.round((val - 23) / 0.41)"


    Berechnung des Faktors hier "0.41":

    ( Dim.Max - Dim.Min ) / 100 > (64 - 23) / 100 = 0.41

    ( Wert 23 = Dim.Min )

    ( Wert 64 = Dim.Max )


    Nichtsdestotrotz sollte 0% immer 0% bzw. "Off" sein damit es Logisch ist.

    Speziell wenn über Alexa gesteuert wird, kann ich ja nicht einem Device zwei Datenpunkte vergeben.

    Wenn man das ganze also jetzt so laufen lassen würde, dann könnte man den Dimmer so nicht ausschalten. Denn immer wenn 0% gesetzt wird springt die Shelly "brightness" zurück auf den letzten Wert.

    Wie bereits erwähnt, habe ich mit einer entsprechenden "Umrechnung" umgesetzt, dass statt 0% einfach 1% gesetzt wird. Dies geht so allerdings nur über ein zusätzliches "Alias" welches ich quasi zwischen GET und SET einbinde.

    Den Schaltzustand "switch" lasse ich dann via Script bei "brightness" <= 1 auf "false" setzten.

    - Ist es also normal das der Dimmer keine 0% annimmt bzw. sich wie beschreiben verhält?
    ( Ich glaube, das dieses Verhalten nicht schon immer so ist )

    - Wie würdest Du / Ihr den Dimmer dann Sinnvoll in z.B. IoBroker einbinden?

    2 Mal editiert, zuletzt von White#Unit#26230 (2. Februar 2021 um 12:43)

    • Hilfreichste Antwort

    Wenn du eh ein übergeordnetes System hast, dann lasse den Dimmwert 0 doch einfach zu einem Off umschreiben. Du passt die Werte ja eh an, damit du ab 1% dimmen kannst.

    Das Verhalten scheint normal zu sein,, wird bei mir bei NodeRed via MQTT und dem Web-UI genauso gehandhabt. Dimmwert 0 wird auf den Mindestwert gesetzt.