Ankündigung

Einklappen
Keine Ankündigung bisher.

Verfahrstatus bei basic.shutter

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

    Verfahrstatus bei basic.shutter

    Hallo,

    ich suche wieder einmal Hilfe bei meiner Visualisierung. Aktuell habe ich bei meiner Visu eine Testpage fuer die Rollo in meinem Buero. Die Steuerung funktioniert dabei wiederum tadellos, allerdings updated die Visu nicht, wenn ich mittels Taster die Rollo verfahre. Gibt es da einen Trick?

    room_office.html
    Code:
    {{ basic.shutter('test_buero', 'EG.Buero.Rollo_Buero.position', ' ', '0', '255') }}
    sv_office.yaml:
    Code:
    Rollo_Buero:
                sv_widget: "{{ device.blind('item', 'item.name', 'item.move', 'item.stop', 'item.position') }} "
                move:
                    name: RoBueLa
                    type: bool
                    knx_dpt: 1
                    knx_send: 2/1/0
                    knx_listen: 2/1/2
                    enforce_updates: 'true'
                    visu_acl: 'rw'
                stop:
                    name: RoBueKu
                    type: bool
                    knx_dpt: 1
                    knx_send: 2/1/1
                    enforce_updates: 'true'
                    visu_acl: 'rw'
                position:
                    name: RoBuePos
                    type: num
                    knx_dpt: 5
                    knx_send: 2/0/6
                    knx_listen: 2/0/6
                    knx_cache: 2/0/6
                    enforce_updates: 'true'
                    knx_init: 2/0/6
                    visu_acl: 'rw'
    ich habe alle knx_* testweise reingegeben um eine Aenderung zu provozieren.

    Danke und lg
    D.
    Zuletzt geändert von birdie12; 16.01.2019, 18:43.

    #2
    Bei position kann knx_send und knx_cache bzw. knx_listen nicht die gleiche GA sein.
    In cache oder listen kommt der Status deines Aktors rein.
    Apropos "oder": Du solltest in jedem Item nur entweder cache oder listen verwenden, nicht beides.

    Kommentar


      #3
      Hallo birdie12,

      ich kann nicht ganz folgen, in der items.yaml hast Du "device.blind(....)" definiert, in der room_office.html taucht dann der "basic.shutter" auf. Welcher wird nun tatsächlich verwendet ? Deine Config lt. *.yaml:
      Code:
       {{ basic.shutter('test_buero', 'EG.Buero.Rollo_Buero.position', ' ', '0', '255') }}
      Verwende den device.shutter mit den vorgesehenen Parametern an der richtigen Stelle, so läuft das bei mir korrekt. Config lt. SmartVisu 2.7 Doku (bin nicht sicher ob hier bei 2.8/2.9 was anders ist)
      Code:
       {{ device.shutter(id, txt, item_move, item_stop, item_pos, item_shift, item_angle, item_saved, min, max, step, mode) }}
      Beispiel aus meiner *.html
      Code:
       {{ device.shutter ('OG.Buero.Rolladen', 'Rolladen Buero', 'OG.Buero.Rolladen.move', 'OG.Buero.Rolladen.stop', 'OG.Buero.Rolladen.pos', '', '', '', 0, 255, 5, 'full') }}
      Gruss Andre

      Kommentar


        #4
        Hallo AndreK,

        habe mein SmarthomeNG z.Z. über einen HyperV realisiert und die Lichtsteuerung der Aktoren funktioniert soweit einwandfrei.

        Jetzt versuche ich die Rolladensteuerung anzugehen, finde aber keine richtigen Beispiele... kannst Du mir da weiterhelfen..

        Als KNX Gruppenadressen haben ich immer die gleiche Folge.
        z.B.:
        Langzeit = 2/5/0
        Kurzzeit = 2/5/1
        Position = 2/5/2 (0-100%)
        Rückmeldung = 2/5/3

        das wiederholt sich jetzt mit anderen Tastern immer wieder.., natürlich mit unterschiedliche Gruppenadressen
        Wie habt Ihr die items definiert und hinterher in der VISU Oberfläche dargestellt..

        Habt Ihr hierfür Beispiele ??

        Gruß aus Solingen



        Kommentar


          #5
          Hallo es muss dann so werden.


          Code:
          Rollo_Buero:
              sv_widget: "{{ device.blind('item', 'item.name', 'item.fahren', 'item.stop', 'item.pos') }} "
              fahren:
                  type: bool
                  enforce_updates: 'yes'
                  visu_acl: rw
                  knx_dpt: 1
                  knx_send: 2/5/0
              stop:
                  type: bool
                  visu_acl: rw
                  enforce_updates: 'yes'
                  knx_dpt: 1
                  knx_send: 2/5/1
              pos:
                  type: num
                  enforce_updates: 'yes'
                  visu_acl: rw
                  knx_dpt: 5.001
                  knx_send: 2/5/2
                  knx_cache: 2/5/3
          #       cache: 'yes'
          Gruß Danny

          Wenn du cache: 'yes' aktivierst dann wird deine Position remanet gespeichert und der letzte Wert wird übernommen vorm Neustart von NG. knx_cache macht aber eine Anfrage auf den KNX Bus und sollte bei cache: 'yes' in knx_listen: 2/5/3 geändert werden.(dann hört er nur zu und macht bei Nestart keine Anfrage)
          Zuletzt geändert von danny; 11.02.2020, 19:46.

          Kommentar


            #6
            Hallo Danny,

            klappt eigentlich schon ganz gut, siehe:

            Code:
             Rollos:
            Rollo_WHZ1:
            sv_widget: "{{ device.blind('item', 'item.name', 'item.fahren', 'item.stop', 'item.pos') }} "
            fahren:
            type: bool
            enforce_updates: 'yes'
            visu_acl: rw
            knx_dpt: 1
            knx_send: 2/5/0
            stop:
            type: bool
            visu_acl: rw
            enforce_updates: 'yes'
            knx_dpt: 1
            knx_send: 2/5/1
            pos:
            type: num
            enforce_updates: 'yes'
            visu_acl: rw
            knx_dpt: 5.001
            knx_send: 2/5/2
            knx_cache: 2/5/3
            # cache: 'yes'
            
            Rollo_WHZ2:
            sv_widget: "{{ device.blind('item', 'item.name', 'item.fahren', 'item.stop', 'item.pos') }} "
            fahren:
            type: bool
            enforce_updates: 'yes'
            visu_acl: rw
            knx_dpt: 1
            knx_send: 2/5/4
            stop:
            type: bool
            visu_acl: rw
            enforce_updates: 'yes'
            knx_dpt: 1
            knx_send: 2/5/5
            pos:
            type: num
            enforce_updates: 'yes'
            visu_acl: rw
            knx_dpt: 5.001
            knx_send: 2/5/6
            knx_cache: 2/5/7
            # cache: 'yes'
            
            Rollo_WHZ3:
            sv_widget: "{{ device.blind('item', 'item.name', 'item.fahren', 'item.stop', 'item.pos') }} "
            fahren:
            type: bool
            enforce_updates: 'yes'
            visu_acl: rw
            knx_dpt: 1
            knx_send: 2/5/8
            stop:
            type: bool
            visu_acl: rw
            enforce_updates: 'yes'
            knx_dpt: 1
            knx_send: 2/5/9
            pos:
            type: num
            enforce_updates: 'yes'
            visu_acl: rw
            knx_dpt: 5.001
            knx_send: 2/5/10
            knx_cache: 2/5/11
            # cache: 'yes'
            
            Rollo_WHZ4:
            sv_widget: "{{ device.blind('item', 'item.name', 'item.fahren', 'item.stop', 'item.pos') }} "
            fahren:
            type: bool
            enforce_updates: 'yes'
            visu_acl: rw
            knx_dpt: 1
            knx_send: 2/5/12
            stop:
            type: bool
            visu_acl: rw
            enforce_updates: 'yes'
            knx_dpt: 1
            knx_send: 2/5/13
            pos:
            type: num
            enforce_updates: 'yes'
            visu_acl: rw
            knx_dpt: 5.001
            knx_send: 2/5/14
            knx_cache: 2/5/15
            # cache: 'yes'
            
            
            
            und hier der Eintrag in der HTML-Datei
            
            <div class="ui-block-a">{{ device.blind ('EG.Wohnzimmer.Rollos', 'Jalousie Whz1', 'EG.Wohnzimmer.Rollos.Rollo_WHZ1.fahren', 'EG.Wohnzimmer.Rollos.Rollo_WHZ1.stop', 'EG.Wohnzimmer.Rollos.Rollo_WHZ1.pos') }} </div>
            <div class="ui-block-b">{{ device.blind ('EG.Wohnzimmer.Rollos', 'Jalousie Whz2', 'EG.Wohnzimmer.Rollos.Rollo_WHZ2.fahren', 'EG.Wohnzimmer.Rollos.Rollo_WHZ2.stop', 'EG.Wohnzimmer.Rollos.Rollo_WHZ2.pos') }} </div>
            <div class="ui-block-c">{{ device.blind ('EG.Wohnzimmer.Rollos', 'Jalousie Whz3', 'EG.Wohnzimmer.Rollos.Rollo_WHZ3.fahren', 'EG.Wohnzimmer.Rollos.Rollo_WHZ3.stop', 'EG.Wohnzimmer.Rollos.Rollo_WHZ3.pos') }} </div>
            <div class="ui-block-d">{{ device.blind ('EG.Wohnzimmer.Rollos', 'Jalousie Whz4', 'EG.Wohnzimmer.Rollos.Rollo_WHZ4.fahren', 'EG.Wohnzimmer.Rollos.Rollo_WHZ4.stop', 'EG.Wohnzimmer.Rollos.Rollo_WHZ4.pos') }} </div>
            habe nur noch einen eigenartigen Effekt...
            wenn ich das Rollo2 stoppe, fährt Rollo1 hoch... und bei einem anderen Rollo genauso, allerdings fährt dann Rollo2 runter, die Gruppenadressen stimmen aber eigentlich... kann das etwas mit dem Cache bzw. Pos zutun haben?

            Gruß
            Alexander

            P.S.: die Positionsanzeigender Rollos stimmen auch nicht richtig, kann aber eine Einstellung im Aktor sein

            Kommentar


              #7
              Die Einrückungen in der items.yaml sind essentiell für die korrekte Abarbeitung. Die Einrückungen sind mit Leerzeichen zu machen (üblich sind 4), nicht mit Tabs(!). Wenn die Einrückungen Dir nur hier im Thread abhanden gekommen sind, solltest Du bitte nochmal die korrekte Struktur oben einfügen.

              In den Aufrufen des widgets device.blind hast Du außerdem immer dieselbe ID (EG.Wohnzimmer.Rollos). Die IDs sollen aber immer "unique", also einzigartig sein. Aus Prinzip würde ich diese deshalb unterschiedlich benennen. Ein kurzer Blick in die device.html zeigt allerdings, dass dies hier nicht die Fehlerursache sein sollte, da die Angabe der ID in diesem widget optional ist.
              Gruß Wolfram

              P.S.: Es freut mich zu lesen, dass Du Deine Installation zum Laufen bekommen hast. Da waren ja einige Forenmitglieder in mehreren Threads involviert. Da die Foren für alle in der Community Wissen generieren und dokumentieren sollen, fände ich es fair, wenn Du die Lösung in dem entsprechenden Thread dokumentieren würdest. (vermutlich ist diese in Deinem Thread im knxd Forum am besten aufgehoben)

              Kommentar


                #8
                Hallo wvhn,

                Die Einrückung stimmt, allerdings nimmt der Codeblock bei mir dies wieder hier heraus, mal sehen was jetzt passiert.
                Code:
                Rollos:
                Rollo_WHZ1:
                sv_widget: "{{ device.blind('item', 'item.name', 'item.fahren', 'item.stop', 'item.pos') }} "
                fahren:
                type: bool
                enforce_updates: 'yes'
                visu_acl: rw
                knx_dpt: 1
                knx_send: 2/5/0
                stop:
                type: bool
                visu_acl: rw
                enforce_updates: 'yes'
                knx_dpt: 1
                knx_send: 2/5/1
                pos:
                type: num
                enforce_updates: 'yes'
                visu_acl: rw
                knx_dpt: 5.001
                knx_send: 2/5/2
                knx_cache: 2/5/3
                # cache: 'yes'

                habe jetzt auch einmal die items in der SmartVisu page einem eindeutigen Namen gegeben.

                Anscheinend lag es wirklich daran, dass die Items alle den gleichen Namen hatten, werde es einmal beobachten !!

                Danke !

                P.S.: Ich hatte ja erhebliche Probleme mit meiner SmarthomeNG überhaupt auf den KNX-Bus zu kommen und Befehle abzusetzen.
                Durch den Einsatz eines Gira-IP-Routers 216700 und der richtigen knxd.conf Einstellung waren die Probleme behoben !!

                Wir haben dem IP-Router die 192.168.10.250 in LAN und einen KNX-Gruppenadressenbereich von 1.1.59 - 1.1.63 vergeben.

                Die knxd.conf lautet jetzt:

                # für den Gira IP-Router
                KNXD_OPTS="-e 1.1.60 -E 1.1.61:2 -D -T -S -b ipt:192.168.10.250"


                mit dieser Konstellation hat es auf Anhieb funktioniert.

                Gruss aus Solingen

                Kommentar


                  #9
                  aber mal eine andere Frage zum dimmen...


                  mein Item ist so beschrieben, natürlich mit der richtigen Einrückung:

                  LampeEsszimmerTisch:
                  schalten:
                  type: bool
                  knx_dpt: 1
                  knx_send: 1/5/100
                  knx_listen: 1/5/103
                  visu_acl: rw
                  dimmen:
                  type: num
                  knx_dpt: 5
                  knx_send: 1/5/101
                  knx_listen: 1/5/103
                  visu_acl: rw


                  und in der Page:
                  {{ device.dimmer('light1', 'Esstisch', 'EG.Esszimmer.Licht.LampeEsszimmerTisch.schalten', 'EG.Esszimmer.Licht.LampeEsszimmerTisch.dimmen',0 , 100) }}


                  so, ein bzw. ausschalten lässt sich die Lampe über SmartVISU, nur dimmen klappt nicht und wenn man der Schieber bewegt, springt der sofort wieder in die Ausgangsposition zurück.

                  Habe im Anhang einmal die Aufzeichnung vom ETS-Busmonitor beigefügt, wenn ich den KNX-Taster im Esszimmer für die Lampe zum dimmen steuere... vielleicht kann man da etwas erkennen...

                  Ich kenne mich da zu wenig aus.

                  Gruß aus Solingen


                  Angehängte Dateien

                  Kommentar


                    #10
                    Wenn Du dafür einen neuen Thread aufmachst, antworte ich Dir gerne. Wir sollten bitte die Disziplin haben, dass wir keine Themen vermischen. Das macht das Suchen für alle anderen nach uns zum Horror.

                    Kommentar


                      #11
                      Vor dem Pasten hier um Forum (nachdem Du den Codeblock mit dem # Button erzeugt hast) in den "Quellmode" umschalten (Button ganz links mit <>), dann Pasten und danach den "Quellmode" wieder ausschalten.
                      Viele Grüße
                      Martin

                      Stay away from negative people. They have a problem for every solution.

                      Kommentar

                      Lädt...
                      X