Ankündigung

Einklappen
Keine Ankündigung bisher.

CreateKNXProd, multiply channels, Kaenx-Creator mit ETS6.06

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

    #46
    henfri Hab den Fehler gefunden. Gibt es einen Grund warum du für Namespace 21 (also nur ETS6) erstellen möchtest?
    Das passt dann natürlich nicht zu dem was mein Tool einträgt als Toolversion 5.7.xxx

    Stell den Namespace auf 20, dann funktioniert es.
    Werde das bei Gelegenheit auch fixen.
    OpenKNX www.openknx.de | Kaenx-Creator | Dali-GW

    Kommentar


      #47
      Danke,
      ich hatte vorher eine geringeren Namespace und da gab es ein anderes Problem (hab ich leider nicht notiert).
      Ich habe aber mehrere knxprod mit 21 erstellt. Das war mit der gleichen XML (nur hatte ich einige KOs entfernt).

      Das ist schon komisch.
      Aber mit Namespace 20 hat es jetzt funktioniert!

      Kommentar


        #48
        Hallo,

        noch eine Frage:
        Aktuell muss man ja weiterhin die KOs in SmarthomeNG anlegen, dann die xml erzeugen, das KNXProd erzeugen und in die ETS laden.
        Folgender Gedanke:
        HomeAssistant kennt Entities, z.B. "Light", was einer Gebäudefunktion in der ETS ähnelt:
        Code:
        knx:
          light:
            # dimmable light
            # color mode: brightness
            - name: "Dimmable light"
              address: "1/0/9"
              state_address: "1/1/9"
              brightness_address: "1/2/9"
              brightness_state_address: "1/3/9"
            # XYY light
            # color mode: xy
            - name: "XYY light"
              address: "1/0/9"
              state_address: "1/1/9"
              brightness_address: "1/2/9"  # optional - if not set brightness will be sent over the xyy data point
              brightness_state_address: "1/3/9"
              xyy_address: "1/4/9"
              xyy_state_address: "1/5/9"
            # HS light
            # color mode: hs
            - name: "HS light"
              address: "1/0/9"
              state_address: "1/1/9"
              brightness_address: "1/2/9"  # required for HS
              brightness_state_address: "1/3/9"
              hue_address: "1/4/8"
              hue_state_address: "1/5/8"  # required for HS
              saturation_address: "1/4/9"
              saturation_state_address: "1/5/9"  # required for HS
            # RGB light
            # color mode: rgb
            - name: "RGB light"
              address: "1/0/9"
              state_address: "1/1/9"
              brightness_address: "1/2/9"  # optional for RGB lights
              brightness_state_address: "1/3/9"
              color_address: "1/4/9"
              color_state_address: "1/5/9"
            # RGBW light
            # color mode: rgbw
            - name: "RGBW light"
              address: "0/4/83"
              state_address: "0/4/84"
              brightness_address: "0/4/85"  # optional for RGBW lights
              brightness_state_address: "0/4/86"
              rgbw_address: "0/4/87"
              rgbw_state_address: "0/4/88"
            # RGB(W) individual object light
            # color mode: rgb / rgbw
            - name: "RGBW individual light"
              address: "1/0/9"  # optional for individual color lights
              individual_colors:
                red:
                  brightness_address: "0/4/61"
                  brightness_state_address: "0/5/61"
                green:
                  brightness_address: "0/4/62"
                  brightness_state_address: "0/5/62"
                blue:
                  brightness_address: "0/4/63"
                  brightness_state_address: "0/5/63"
                white:
                  brightness_address: "0/4/64"
                  brightness_state_address: "0/5/64"
            # tunable white light
            # color mode: color_temp
            - name: "TW light"
              address: "1/0/21"
              state_address: "1/1/21"
              brightness_address: "1/2/21"
              brightness_state_address: "1/3/21"
              color_temperature_address: "1/4/21"
              color_temperature_state_address: "1/5/21"
              color_temperature_mode: absolute
              min_kelvin: 2550
              max_kelvin: 6200
            # actuator without dedicated state communication object
            # color mode: onoff
            - name: "Simple light"
              address: "1/0/5"
              state_address: "1/0/5"
        Könnte man mit Kaenx-Creator eine Applikation erstellen in der man ein Drop-Down Menü hat, in dem man sagt, man hätte gerne 17 Licht Entities und dann werden alle o.g. KOs eingeblendet?
        So machen das ja andere Applikationen auch...
        Die Applikation "auf der anderen Seite" also der Logik-Engine (hier HomeAssistant) würde dann über die Anzahl der Light-Entitäten erfahren (ein Parameter der übertragen wird) und wissen (hard-gecoded) dass die Light-Entitäten jeweils (habe jetzt nicht gezählt) 20 KOs sind und von KO100 bis KO400 gehen.
        Das erste Light wäre also von 101-120, das zweite von 121-130 usw.

        Aber letztlich ist das dann in der Logik-Engine unübersichtlich, da es ja keine Möglichkeit gibt, Namen für die Entitäten zu übertragen. Die müsste man dann dort benennen.

        Oder habt ihr eine bessere Idee?

        Gruß,
        Hendrik

        Kommentar


          #49
          Kann ma eigentlich Applikationen für Geräte bauen die Tunnelling benutzen? Die IA die die Applikation bekommen müsste wäre ja dann schon vom Tunnel des Interface besetzt 🤔

          Kommentar


            #50
            Das ist eher eine Frage des KNX-Stacks und nicht der ETS-Applikation, oder? Kann ich so nicht beantworten, da müsstest Du eher thesing fragen.

            Gruß, Waldemar
            OpenKNX www.openknx.de

            Kommentar


              #51
              Zitat von henfri Beitrag anzeigen
              mumpf, wie sieht es mit OpenKNXProducer aus?
              Ich weiß ehrlich gesagt nicht, was Roles sind, aber der OpenKNXProducer macht ja nichts am xml (zumindest in der Variante, wie Du es benutzt), sondern macht nur aus einem gegebenen xml eine knxprod.

              Wenn also darin Roles definiert sind und das korrekt formuliert ist, wird es funktionieren.

              Gruß, Waldemar
              OpenKNX www.openknx.de

              Kommentar


                #52
                Zitat von mumpf Beitrag anzeigen
                Das ist eher eine Frage des KNX-Stacks
                Ich denk das ist ne reine ETS Frage. Wenn ich die Applikation importiere und dann ins Projekt ziehe muss ich ja auch eine IA vergeben. ETS wird dann versuchen zu der IA zu verbinden wenn die Applikation geschrieben werden soll (bzw. mal schauen ob die im Prog-Mode ist). Also - kann man der Applikation sagen dass ihr Gerät hinter nem Tunnel hängt?

                Kommentar


                  #53
                  Zitat von henfri Beitrag anzeigen
                  Könnte man mit Kaenx-Creator eine Applikation erstellen in der man ein Drop-Down Menü hat, in dem man sagt, man hätte gerne 17 Licht Entities und dann werden alle o.g. KOs eingeblendet?
                  Man kann vieles in einer Applikation machen.
                  Aber man muss das alles auch dann im SmathomeNG wieder parsen und auswerten.
                  Und so wie ich thesing verstandn habe, hat er keine Lust/Zeit das Plugin groß umzubauen^^

                  Zitat von henfri Beitrag anzeigen
                  Die Applikation "auf der anderen Seite" also der Logik-Engine (hier HomeAssistant) würde dann über die Anzahl der Light-Entitäten erfahren
                  Allerdings würde sie nicht wissen welches KO jetzt zu welche Entität gehört.
                  Von daher finde ich den Weg den es jetzt gibt, logisch und auch sehr wartungsfreundlich ohne große Konfiguration.
                  OpenKNX www.openknx.de | Kaenx-Creator | Dali-GW

                  Kommentar


                    #54
                    Bei mir habe ich rekursive structs benutzt um recht einfach zu beschreiben, was ich in welchen Zimmern habe. Siehe: https://knx-user-forum.de/forum/supp...9F-mit-structs

                    Das ist auch der Grund warum ich noch auf einer alten Version bin. Mein patch der das ermöglicht hat geht nicht mehr.

                    Wenn ich mal Lust hab schau ich mir evtl. mal HA an.

                    Kommentar


                      #55
                      Hallo,

                      ich würde hierauf noch einmal zurückkommen:
                      Zitat von meti Beitrag anzeigen

                      Ich denk das ist ne reine ETS Frage. Wenn ich die Applikation importiere und dann ins Projekt ziehe muss ich ja auch eine IA vergeben. ETS wird dann versuchen zu der IA zu verbinden wenn die Applikation geschrieben werden soll (bzw. mal schauen ob die im Prog-Mode ist). Also - kann man der Applikation sagen dass ihr Gerät hinter nem Tunnel hängt?
                      Angenommen der Nutzer hat nur eine IP-Schnittstelle (aber mit mehreren Tunneln):
                      Kann die ETS über den einen Tunnel das Gerät (z.B. HomeAssistant) am anderen Tunnel erreichen und programmieren? Der Thesing-Stack kann ja nur Routing. Da geht das sicherlich nicht. Aber wäre es theoretisch machbar?

                      Gruß,
                      Hendrik

                      Kommentar


                        #56
                        Das ist machbar. Knxd funktioniert im Prinzip auch nicht anders. Man müsste im Stack nur ein DataLinkLayer für Tunnelling programmieren. Die Frage dabei ist woher das Gerät die IP-Adresse der Schnittstelle bekommt.

                        Kommentar


                          #57
                          Wie kommt knxd da drum rum?
                          The KNXnet/IP Tunnelling Server shall only pass those KNX point-to-point addressed telegrams to the KNXnet/IP Tunnelling Client that contain the KNX Individual Address of the KNXnet/IP Tunnelling connection with this KNXnet/IP Tunnelling Client.
                          Die IP der Schnittstelle bekommst du zb. von einem SearchRequest.

                          Kommentar


                            #58
                            Da wird bestimmt der RawMode oder der BusmonitorMode genutzt.

                            Edit: Soweit ich das hier: https://github.com/knxd/knxd/blob/07...ettunnel.h#L74 sehe wird eine ganz normale Verbindung zum Interface aufgemacht. Man sollte also nur das von seiner IA sehen und die Gruppenkommunikation.
                            Evtl. wir das woanders nochmal überschrieben oder die IP-Schnittstellen verhalten sich nicht ganz konform. Wer weiß ob das getestet wird.
                            Zuletzt geändert von thesing; 06.02.2023, 21:18.

                            Kommentar

                            Lädt...
                            X