Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Visualisierung
    4. VIS: Taster und Status in einem Widget mit KNX GAs

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    VIS: Taster und Status in einem Widget mit KNX GAs

    This topic has been deleted. Only users with topic management privileges can see it.
    • botto
      botto last edited by botto

      Hallo,

      ich bin noch recht frisch in der IOBROKER Welt und habe ein Problem bei der Aktualisierung meiner KNX Rückmeldeobjekte. Genauer gesagt geht es eher um die Darstellung von Widgets in der VIS. Ich verwende derzeit die Material Widgets, welche meine gewünschte Taster-Funktionalitäten gut unterstützen.

      Das Gewünschte Verhalten wäre folgendes:

      • Taster (Toggle Button) in VIS wird gedrückt - Gruppenadresse wird mit dem Wert 1 gesendet. --> klappt
      • Taster in VIS wird losgelassen und Wert mit 0 wird gesendet. --> klappt
      • Licht wird eingeschaltet. --> klappt
      • Rückmeldeobjekt meldet "1" bzw. true zurück. --> klappt - sieht man auch in der Objektansicht der Instanz
      • Der Taster in VIS wechselt den Status (Aussehen). --> klappt nicht -> Habe ich den Button falsch verstanden?

      In der KNX raw Object Beschreibung der Gruppenadresse sehe ich, dass das Rückmeldeobjekt beim Import wohl richtig als statusGARefId in dem Schaltgruppenadressen-Objekt eingetragen wurde.
      Welche Button Widgets (Taster) sind also die richtigen für meine Fall (Taster und Status in einem Widget)?

      Ich hoffe es kann mir jemand helfen?
      Besten Dank 😊 .

      paul53 1 Reply Last reply Reply Quote 0
      • paul53
        paul53 @botto last edited by paul53

        @botto sagte

        • Taster (Toggle Button) in VIS wird gedrückt - Gruppenadresse wird mit dem Wert 1 gesendet. --> klappt
        • Taster in VIS wird losgelassen und Wert mit 0 wird gesendet. --> klappt

        Ist der Taster-Datenpunkt wirklich vom Typ "number" und muss zwischen 0 und 1 wechseln?

        Wenn Kommando (Taster) und Status (Rückmeldung) verschiedene Datenpunkte sind, kann man sie für Vis in einem Alias zusammenführen. Beispiel:

        {
          "type": "state",
          "common": {
            "name": "Lampe Esstisch",
            "role": "switch",
            "type": "boolean",
            "desc": "per Script erstellt",
            "read": true,
            "write": true,
            "def": false,
            "alias": {
              "id": {
                "read": "knx.0.Wohnen.Licht.Esstisch_Status",
                "write": "knx.0.Wohnen.Licht.Esstisch_Taster"
              },
              "write": "val ? true : true"
            }
          },
        
        botto 1 Reply Last reply Reply Quote 0
        • botto
          botto @paul53 last edited by

          Danke Paul für deine Unterstützung....

          @paul53 sagte
          Ist der Taster-Datenpunkt wirklich vom Typ "number" und muss zwischen 0 und 1 wechseln?

          In der VIS scheibt es egal zu sein ob ich values (0/1) oder boolsche Werte (false/true) eintrage. Das Licht schaltet so wie es soll.

          Wenn ich die Status-Object-ID einzeln an ein Widget hänge, geht es ja auch - nur verknüpft in einem Widget läuft nicht oder geht vielleicht auch nicht?.

          Zu deinem Beispiel bei mir würde es so Aussehen (den footer) generiert er anscheinend automatisch:

          {
            "type": "state",
            "common": {
              "name": "Lampe Stube",
              "role": "switch",
              "type": "object",
              "desc": "per Script erstellt",
              "read": true,
              "write": true,
              "def": false,
              "alias": {
                "id": {
                  "read": "knx.0.EG.Stube.Stube_Licht_Status",
                  "write": "knx.0.EG.Stube.Stube_Licht"
                },
                "write": "val ? true : true"
              }
            },
            "_id": "alias.0.EG.Stube.EG_Stube_Licht",
            "acl": {
              "object": 1636,
              "state": 1636,
              "owner": "system.user.admin",
              "ownerGroup": "system.group.administrator"
            },
            "from": "system.adapter.admin.0",
            "user": "system.user.admin",
            "ts": 1633983970416
          }
          

          Wenn ich diesen Alias als Object ID an ein Widget mit der Push Button Funktionalität hänge, wird kein false mehr auf den Bus gesendet. Wie gesagt bin ich noch nicht so in Thema mit diesen Scripten etc.
          Andererseits scheint es doch ne Menge Arbeit zu sein für so eine simple Anwendung, Es muss ja dann für jeden Taster ein neuer Alias erzeugt werden....
          Eine andere Möglichkeit gibt es nicht (ausgenommen zwei Widgets zu machen) ? 😕

          paul53 1 Reply Last reply Reply Quote 0
          • paul53
            paul53 @botto last edited by paul53

            @botto sagte: den footer) generiert er anscheinend automatisch:

            Ja, aber es fehlt

            }, // Ende common
            "native": {},
            

            und common.type muss "boolean" sein.

            @botto sagte in VIS: Taster und Status in einem Widget mit KNX GAs:

            wird kein false mehr auf den Bus gesendet.

            Ist das erforderlich? Bei den meisten Tastern genügt, wenn beim Wert true der Zeitstempel aktualisiert wird.

            @botto sagte in VIS: Taster und Status in einem Widget mit KNX GAs:

            Wenn ich diesen Alias als Object ID an ein Widget mit der Push Button Funktionalität hänge

            Das Widget sollte ein Schalter/Toggle-Widget sein mit der Darstellung von "Aus" bei false und "Ein" bei true.

            botto 1 Reply Last reply Reply Quote 0
            • botto
              botto @paul53 last edited by

              @paul53 said in VIS: Taster und Status in einem Widget mit KNX GAs:

              Ja, aber es fehlt

              }, // Ende common
              "native": {},
              

              Hier nun meine Anpassungen:

              {
                "type": "state",
                "common": {
                  "name": "Lampe Stube",
                  "role": "switch",
                  "type": "boolean",
                  "desc": "per Script erstellt",
                  "read": true,
                  "write": true,
                  "def": false,
                  "alias": {
                    "id": {
                      "read": "knx.0.EG.Stube.Stube_Licht_Status",
                      "write": "knx.0.EG.Stube.Stube_Licht"
                    },
                    "write": "val ? true : true"
                  }
                },
                "native": {},
                "_id": "alias.0.EG.Stube.EG_Stube_Licht",
                "acl": {
                  "object": 1636,
                  "state": 1636,
                  "owner": "system.user.admin",
                  "ownerGroup": "system.group.administrator"
                },
                "from": "system.adapter.admin.0",
                "user": "system.user.admin",
                "ts": 1634006346388
              }
              

              Ergebnis war aber weiterhin nicht das gewünschte.
              Das Problem mit der fehlenden false Msg bleibt.

              @paul53 said in VIS: Taster und Status in einem Widget mit KNX GAs:

              Ist das erforderlich? Bei den meisten Tastern genügt, wenn beim Wert true der Zeitstempel aktualisiert wird.

              Da meine Hardwae-KNX-Taster alle nur Werte (1/0) senden und die Logik in einer Wago Steuerung gemacht wird, wäre das schon wichtig, Stichwort Flankengesteuert. Diese Umsetzung bietet mir bisher die besten Möglichkeiten in meiner Automatisierung (VISU mal ausgenommen).

              @paul53 said in VIS: Taster und Status in einem Widget mit KNX GAs:

              Das Widget sollte ein Schalter/Toggle-Widget sein mit der Darstellung von "Aus" bei false und "Ein" bei true.

              Also ich habe das Button Toogle Widget verwendet [Material Design]. Welches könnte besser dafür geeignet sein? Brauche ja wie gesagt auch die Taster Funktion 😖 .

              Ich frage mich halt, ob es nicht auch anders geht? Wofür sonst gibt es die statusGARefId bei den KNX Objekten? Ich habe hier mal meine beiden Objekte aufgeführt.

              Schalten:

              {
                "_id": "knx.0.EG.Stube.Stube_Licht",
                "type": "state",
                "common": {
                  "name": "Stube Licht",
                  "type": "boolean",
                  "read": false,
                  "write": true,
                  "role": "switch",
                  "min": false,
                  "max": true
                },
                "native": {
                  "dpt": "DPT1.001",
                  "address": "0/3/0",
                  "addressRefId": "P-0348-0_GA-100",
                  "statusGARefId": "P-0348-0_GA-215",
                  "actGARefId": ""
                },
                "from": "system.adapter.knx.0",
                "user": "system.user.admin",
                "ts": 1633722828691,
                "acl": {
                  "object": 1636,
                  "state": 1636,
                  "owner": "system.user.admin",
                  "ownerGroup": "system.group.administrator"
                }
              }
              

              Status:

              {
                "_id": "knx.0.EG.Stube.Stube_Licht_Status",
                "type": "state",
                "common": {
                  "name": "Stube Licht Status",
                  "type": "boolean",
                  "read": true,
                  "write": false,
                  "role": "indicator.switch",
                  "min": false,
                  "max": true
                },
                "native": {
                  "dpt": "DPT1.001",
                  "address": "0/3/3",
                  "addressRefId": "P-0348-0_GA-215",
                  "statusGARefId": "",
                  "actGARefId": "P-0348-0_GA-100"
                },
                "from": "system.adapter.knx.0",
                "user": "system.user.admin",
                "ts": 1633722828714,
                "acl": {
                  "object": 1636,
                  "state": 1636,
                  "owner": "system.user.admin",
                  "ownerGroup": "system.group.administrator"
                }
              }
              

              Wenn das alles so nicht geht in *vis, würde ich auch auf ein Widget zurückgreifen indem ich zwei Object-IDs hinterlegen kann (read/write). Es sollte dann in Abhängigkeit des state natürlich ein Umblenden von Icon oder Caption möglich sein - habe ich bisher aber nicht gefunden....

              paul53 1 Reply Last reply Reply Quote 0
              • paul53
                paul53 @botto last edited by paul53

                @botto sagte: Flankengesteuert.

                Wenn die Flanke benötigt wird, erstelle ein kleines Skript, das verzögert auf false zurück setzt.

                on({id: 'knx.0.EG.Stube.Stube_Licht', val: true}, function(dp) {
                   setTimeout(function() {
                      setState(dp.id, false);
                   }, 200);
                });
                
                botto 1 Reply Last reply Reply Quote 0
                • botto
                  botto @paul53 last edited by

                  @paul53 sagte

                  Wenn die Flanke benötigt wird, erstelle ein kleines Skript, das verzögert auf false zurück setzt.

                  Das ist unnötig weil das Taster Widget das ja eigentlich schon liefert. Außerdem wäre das ja sehr viel Aufwand für jede einzelnen Taster. Sicher gibt es da auch Templates oder so aber es ist aktuell viel zu aufwändig.

                  Leider habe ich bisher immer noch nicht die Sache mit der statusGARefId verstanden. Was soll ich damit wenn ich es nicht im Widget nutzen kann. Vermutlich liegt das an der Push Button Konfig meines Widgets.

                  @botto sagte

                  Wenn das alles so nicht geht in *vis, würde ich auch auf ein Widget zurückgreifen indem ich zwei Object-IDs hinterlegen kann (read/write). Es sollte dann in Abhängigkeit des state natürlich ein Umblenden von Icon oder Caption möglich sein - habe ich bisher aber nicht gefunden....

                  Gibts da denn nichts? Das wäre doch wohl wesentlich einfacher und nachhaltiger!

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

                  Support us

                  ioBroker
                  Community Adapters
                  Donate

                  895
                  Online

                  31.9k
                  Users

                  80.1k
                  Topics

                  1.3m
                  Posts

                  vis
                  2
                  7
                  554
                  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