Ankündigung

Einklappen
Keine Ankündigung bisher.

Support Thread für das hue2 Plugin

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    #61
    tsb2001

    Da das Faden von einer Helligkeit zur andern Helligkeit vom Hue Leuchtmittel übernommen wird, kann man das noch deutlich einfacher gestalten, als die Logik die henfri das implementier hat.

    Das geht z.B. einfach mit einem on_update Attribut:
    Code:
        on_update: .. = min(sh...() + value[1], 255) if (value[0] == 1) else max (sh...() - value[1], 0)
    welches den relativen Wert auf die Brightness addiert (oder subtrahiert). Die min() und max() Funktionen verhindern, dass der Wertebereich von 0 bis 255 verlassen wird. Durch die relative Adressierung kannst Du das unverändert bei jedem Item einfügen.

    Für eine Leuchte sieht das dann so aus:
    Code:
    leuchte:
        hue2_id: 3
        hue2_resource: light
    
        onoff:
            type: bool
            hue2_id: ..:.
            hue2_resource: ..:.
            hue2_function: on
    
        level:
            type: num
            cache: 'on'
            hue2_id: ..:.
            hue2_resource: ..:.
            hue2_function: bri
    
            dim:
                type: list
                initial_value: [0, 0]
                knx_dpt: 3
                knx_listen: 8/0/2
                on_update: .. = min(sh...() + value[1], 255) if (value[0] == 1) else max (sh...() - value[1], 0)
    Wenn Du Dich auf die structs einlässt, die das Plugin mitbringt, sieht das noch simpler aus:
    Code:
    leuchte2:
        hue2_id: 3
        struct: hue2.light
    
        level:
            cache: 'on'
    
            dim:
                type: list
                initial_value: [0, 0]
                knx_dpt: 3
                knx_listen: 8/0/2
                on_update: .. = min(sh...() + value[1], 255) if (value[0] == 1) else max (sh...() - value[1], 0)
    wobei die struct auch noch die Items für die Farbsteuerung anlegt.

    In einem kommenden Release könnte man das dim Item mit dem on_update Attribut in die struct Definitionen des Plugins mit aufnehmen.

    Falls Dir das zu komplex ist, kannst Du natürlich auch beim alten Plugin bleiben, solange es für Dich noch funktioniert.
    Zuletzt geändert von Msinn; 02.05.2021, 10:49.
    Viele Grüße
    Martin

    There is no cloud. It's only someone else's computer.

    Kommentar


      #62
      Hallo Martin,
      zunächst mal vielen Dank, dass du dich mit sowas beschäftigtst.
      Ich würde gerne das neue Plugin weiter verwenden, da es absolut gut gelungen ist.
      Ich habe grade den Weg den du vorschlägst, auch glücklicherweise verstanden und auch so nachgebaut.
      Leider gibt es in deinem Gedankengang einen kleinen Haken:

      Die Lampe dimmt, aber nur bei jedem neuen Tastendruck um jeweils den Wert +/- 1 nach oben oder unten, weil der durchgängige Tastendruck durch das on_update nur einmal getriggert wird, nämlich beim Drücken der Taste. Damit wird entweder um 1 inkrementiert oder dekrementiert; bis zum nächsten Tastendruck. Um von maximaler Helligkeit mit 255 bis minimale (sinnvolle) Helligkeit mit 10 kommen möchte, muss ich die Taste zum Herunterdimmen 245 Mal betätigen...

      Kommentar


        #63
        Zitat von tsb2001 Beitrag anzeigen
        Die Lampe dimmt, aber nur bei jedem neuen Tastendruck um jeweils den Wert +/- 1 nach oben oder unten
        Das heisst, Dein Taster sendet nur den Wert 1? DPT3 sieht vor, dass ein Wert zwischen 1 und 7 vom KNX Sensor gesendet werden kann.

        Was für einen KNX Sensor setzt Du denn ein?

        Wenn Ich das richtig verstehe (ich nutze das relative Dimmen mit hue nicht und habe es inzwischen auch im KNX nicht mehr im Einsatz), ist beim alten hue Plugin
        hue_dim_step die Anzahl Steps. Da hast Du 10 gesetzt.

        Das würde bedeuten, Du musst im on_update jeweils mit 10 multiplizieren:
        Code:
            on_update: .. = min(10*(sh...() + value[1]), 255) if (value[0] == 1) else max (10*(sh...() - value[1]), 0)
        Viele Grüße
        Martin

        There is no cloud. It's only someone else's computer.

        Kommentar


          #64
          Eingesetzt ist da ein MDT Glastaster BE-GTT8x.01. Der gibt nur jeweils den Start und die Richtung vor. Mehr geht da nicht.

          Kommentar


            #65
            Dann füge mal die Multiplikation mit 10 (oder einem anderen Wert, falls 10 nicht Dein Optimum ist) ein.
            Viele Grüße
            Martin

            There is no cloud. It's only someone else's computer.

            Kommentar


              #66
              Btw: Kann der Taster auf „Repeat“ beimdauerhaftem Drücken konfiguriert werden? Dann müsstest Du nicht n-mal drücken und mit dem Faktor (10) steuerst Du nur noch wie schnell gedimmt werden soll.

              Falls das „repeat“ des Tasters nicht im Item ankommt, probier mal enforce_updates: True.
              Zuletzt geändert von Msinn; 02.05.2021, 16:52.
              Viele Grüße
              Martin

              There is no cloud. It's only someone else's computer.

              Kommentar


                #67
                tsb2001

                Ist bei Dir das relative Dimmen im Taster als Start/Stop Dimmen implementiert?
                Falls ja, würde ich in den nächsten Tagen mal schauen, wie ich das in das on_update Attribut eingebaut bekomme.
                ​​​​​​​
                Viele Grüße
                Martin

                There is no cloud. It's only someone else's computer.

                Kommentar


                  #68
                  Bin gerade dabei, auf das neue HUE2 Plugin umzuziehen. Ich habe einen kleinen "Bug" gefunden. Und zwar schon ganz am Anfang bei create_new_username. Ich gehe davon aus, dass es an der Länge des devicetypes liegt. Mein fqdn ist relativ lang - devsmarthome.intern.myXXXXX.de. Im Log findet sich folgende Fehlermeldung beim Anmelden.

                  Code:
                  2021-05-06  15:08:11 WARNING  plugins.hue2        create_new_username: Exception invalid value,  SmartHomeNG#devsmarthome.intern.myXXXXX.de, for parameter, devicetype
                  Hab jetzt nur testweise mal in Deinem Plugin gewildert und einfach den getfqdn einfach mal raus genommen. Danach hat es auf Anhieb geklappt.

                  Code:
                  if devicetype is None:
                  #    devicetype = "SmartHomeNG#{}".format(getfqdn())
                      devicetype = "SmartHomeNG" #.format(getfqdn())
                  Ich stelle jetzt weiter um und würde gleich im Anschluss auch das Dimmen am Taster versuchen. Ich hatte das ebenfalls mit dem alten Plugin so gemacht.

                  Viele Grüße
                  Marco

                  Kommentar


                    #69
                    erstmal danke an msinn für das plugin!

                    Habe conbee 2 mit dconz auf einen Raspi installiert und einen Aquara Multi-Sensor mit Temperatur, Feuchte und Druck verbunden.

                    Das hui2 plugin ist konfiguriert und die Verbindung zu conbee hergestellt. Im Web-Inferface des plugins wird der Sensor und die Werte korrekt angezeigt.

                    Ich würde gerne diese Werte auf den KNX bus senden (ähnlich des 1wire plugins).

                    Ich habe leider keine Beschreibung gefunden, wie die item Definition dazu aussehen muss.

                    Funktioniert das? Habe zur "hue2_ressource: sensor" leider nichts gefunden.

                    Wie müsste das aussehen?


                    Kommentar


                      #70
                      Zitat von taichber Beitrag anzeigen
                      erstmal danke an msinn für das plugin!

                      Habe conbee 2 mit dconz auf einen Raspi installiert und einen Aquara Multi-Sensor mit Temperatur, Feuchte und Druck verbunden.

                      Das hui2 plugin ist konfiguriert und die Verbindung zu conbee hergestellt. Im Web-Inferface des plugins wird der Sensor und die Werte korrekt angezeigt.

                      Ich würde gerne diese Werte auf den KNX bus senden (ähnlich des 1wire plugins).

                      Ich habe leider keine Beschreibung gefunden, wie die item Definition dazu aussehen muss.

                      Funktioniert das? Habe zur "hue2_ressource: sensor" leider nichts gefunden.

                      Wie müsste das aussehen?

                      habe es mal so probiert:

                      Code:
                      hue2sensor:
                          name: Temperatur
                          type: num
                          hue2_resource: sensor
                          hue2_id: 2
                          knx_dpt: 9
                          knx_send: 4/3/1
                          knx_reply: 4/3/1
                          enforce_updates: true
                      Leider wird kein Sensor Wert beim Attribute angezeigt:
                      Item Pfad zigbee
                      Item Name Temperatur
                      Datentyp num
                      Wert 0

                      Im hue2 WebIf wird der Wert dargestellt:

                      Code:
                      {'lastupdated': '2021-09-16T18:48:42.166', 'temperature': 2340}

                      Kommentar

                      Lädt...
                      X