Ankündigung

Einklappen
Keine Ankündigung bisher.

Kaenx-Creator - Erstelle KNX Produktdatenbanken mit GUI

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

    Hallo Helmut,


    Zu deinen Fehlermeldungen:
    - Bei dem Modul ist die Zuordnung von ComObjectNumberOffset verloren gegangen. Ich hab das mal in den Check mit eingebaut.
    - der ProdViewer unterstützt den Repeater nicht. Das ist komplizierter zu importieren und anzuzeigen.

    Wie gesagt, alles von den Modulen wo es um ParameterOffset und ComObjectOffset geht, wird automatisch beim veröffentlichen berechnet.
    Sowohl wenn man manuell alle Module einfügt, auch wenn man den Repeater verwendet.
    Lediglich selbst angelegte Argumente (wie Channel Nummer oder so) müssen händisch angepasst werden.

    Falls es dich interessiert, die Werte berechnen sich wie folgt:
    argParas = max + (size * InstanceId)
    max = höchster Speicherplatz der Parameter in der normalen Applikation
    size = Speichergröße die das Modul benötigt.
    InstanceId = Nummer der ModulInstance, von 0 bis n.

    argComs = max + (size * InstanceId)
    max = höchste KO Nummer in der normalen Applikation
    size = höchste KO Nummer im Modul
    InstanceId = Nummer der ModulInstance, von 0 bis n.

    Gruß Mike
    OpenKNX www.openknx.de | Kaenx-Creator | Dali-GW

    Kommentar


      @all ich werde den Creator bald etwas umbauen.
      Ab dann gibt es pro Datei immer nur eine Applikationsversion.
      Damit fallen viele Klicks beim öffnen der Applikation und kompliziertes zuordnen von hardware-geräte-applikation weg.

      Verwendet überhaupt jemand die Möglichkeit mehrere Applikationen oder auch nur Versionen in einer Datei zu haben?

      Gruß Mike
      OpenKNX www.openknx.de | Kaenx-Creator | Dali-GW

      Kommentar


        In der v1.6.6 gibt es nun eine kleine Neurung!
        Es lassen sich nun Unions visualisiert darstellen.
        Somit lässt sich leicht prüfen, ob sich Parameter überlappen oder auch nicht rein passen.
        Auch freie stellen lassen sich so viel schneller finden.
        image.png
        OpenKNX www.openknx.de | Kaenx-Creator | Dali-GW

        Kommentar


          Hallo Mike,

          ich habe eben die neue Version ausprobiert. Der Import in die ETS funktioniert, bei Einfügen des Devices kommt aber die Meldung, dass der Schlüssel schon vorhanden ist. Ich habe daraufhin die Verion von 8 -> 9 erhöht, was das Problem aber nicht behebt.
          Kann man diese Einträge in der ProduktDB nicht löschen?
          Ich lösche ja jeweils vor dem Importieren einer neuen Veröffentlichung (gleiche Verion) immer erst den Eintrag im Katalog.

          Wie kann ich das Problem lösen?

          Gruß
          Helmut

          Kommentar


            Hallo Helmut,

            das Problem kann von vielem Verursacht werden.
            Wenn es nur an der Applikation liegt, dann musst du das Projekt vorher "komprimieren".
            Davor musst du aber alle Geräte entfernen, die die alte Applikation noch verwenden.

            Es könnte auch sein, dass es Änderungen an der Hardware gab.
            Evtl mal bei der auch die Version um eins erhöhen.

            Natürlich auch noch vorher aus dem Katalog entfernen.
            Aber da der Import geklappt hat, sollte es daran nicht liegen.

            Gruß Mike
            OpenKNX www.openknx.de | Kaenx-Creator | Dali-GW

            Kommentar


              Hallo Mike,

              was meinst du mit Projekt "komprimieren"?

              Erhöhen der HW Version hilft auch nicht.

              Nachtrag: Ich bin zurück auf die Version 1.6.5 gegangen. Wenn ich mit der Veröffentliche klappt der Import und das Hinzufügen des Devices im ETS einwandfrei ...

              Gruß
              Helmut
              Zuletzt geändert von mobil750; 08.11.2023, 16:55.

              Kommentar


                Hallo Mike,

                nachdem ich das herausgefunden habe, mache ich erstmal mit der V1.6.5 weiter.
                Dazu wird dann folgendes für mich interessant:

                Verwenden von Repeater
                Ein Repeater wiederholt ein Modul beliebig oft und muss nur ein mal eingefügt werden.
                Ein späteres Ändern der Channel Anzahl ist leicht und lässt sich auch über einen externen Parameter dynamisch in der ETS festlegen.
                Dazu benötigt man Allokatoren.​
                ​Doch da ergeben sich wieder Fragen.
                - mit welchem externen Parameter, kann ich per ETS die Anzahl der Repeats steuern? Bei "Repeat" kann man ja nur händisch eine Anzahl eingeben.
                - müsste man den Repeat Parameter nicht auch in der knxprod.h finden, damit man in der FW entsprechend reagieren kann?

                Gruß
                Helmut
                Angehängte Dateien

                Kommentar


                  Hallo Helmut,

                  kannst du mir mal bitte die zwei knxprods schicken?
                  Also einmal mit 1.6.5 und einmal mit 1.6.6 erstellt.
                  (gern auch über Slack)

                  Im Creator heißt der Parameter zum vervielfältigen fälschlicherweise "Text Parameter".
                  Ist dieser gesetzt, werden jenachdem wie der Wert des Parameters ist x*Anzahl erstellt.
                  Anzahl ist hier die fest eingegebene Zahl darüber.
                  Den Parameter kann man ja wie gewöhnlich jeden anderen parameter auch im Speicher ablegen.
                  Dieses vorgehen wird aber aktuell noch nicht wirklich unterstützt, bzw die Berechnungen dazu müsstest du selbst machen.

                  Das Komprimieren befindet sich in den Details des Projektsimage.png

                  Gruß Mike
                  OpenKNX www.openknx.de | Kaenx-Creator | Dali-GW

                  Kommentar


                    Hallo Mike,

                    mein Problem mit der V1.6.6 kann ich nicht mehr nachstellen. Ich habe eben das Projekt mit V1.6.5 und V1.6.6 Veröffentlicht und konnte beide Versionen in der ETS verwenden. Da muss ich gestern scheinbar irgend etwas anders gemacht haben.

                    Gruß
                    Helmut

                    Kommentar


                      Hallo Helmut,

                      da war wahrscheinlich noch die gleiche knxprod mit einem anderen Hash im Katalog.
                      Dann kommen solche Fehler.
                      Aber danke für die Rückmeldung, dass es jetzt auch mit der 1.6.6 klappt.

                      Gruß Mike
                      OpenKNX www.openknx.de | Kaenx-Creator | Dali-GW

                      Kommentar


                        Hallo Mike,

                        ich möchte dich nochmals um Unterstützung bei den Modulen bitten. Es wird ja eigentlich alles automatisch berechnet, aber irgend etwas mache ich da noch was verkehrt. Beim Instanziieren (V1.6.6) bekomme ich eine ETS Fehlermeldung, bzgl. des Allocator.
                        Ein interner Fehler ist aufgetreten.
                        Allocator would exceed allowed maximum value: Id: M-00FA_A-AE00-08-4108_L-1 CurrentValue: 1438 BaseValue: 0 allocates: 100 Alignment: + MaxInclusive: 1438​
                        Ich raff das noch nicht,was ich da noch machen muss.
                        Was bedeutet im REPEAT Element "Anzahl"?
                        Muss man da die max. Anzahl der Modul Instanzen angeben?

                        Ich hänge nochmal meine Dateien an. Kannst du da bitte nochmal drüber schauen und den entscheidenden Tipp geben?

                        Danke
                        Helmut
                        Angehängte Dateien

                        Kommentar


                          Hallo Helmut,

                          das was du gemacht hast ist beide Varianten zu vereinen.
                          Du hast einmal einen Text Parameter angegeben UND die Anzahl festgelegt.
                          Das ergibt dann: (Wert von Parameter) * Anzahl = (1 bis n) * 12

                          Dein Text Parameter ist auch noch wirklich ein Text, das geht nicht. Das muss eine Number sein.
                          Hatte erwähnt, dass der nur fälschlich noch als Text Parameter bezeichnet ist. Sorry für die Verwirrung. Ist in der 1.7.0 die Tage gefixt.

                          Du hast nun zwei Möglichkeiten:
                          - Text Parameter raus nehmen und fest auf "Anzahl" stellen. (Hier also die 12 drin lassen)
                          - Text Parameter auf NumberUInt umstellen. Anzahl auf 1 stellen. (Bedenke ParameterWert * Anzahl)

                          Im Anhang findest du ein Projekt angepasst auf Möglichkeit 1.

                          Gruß Mike


                          P.s.: Wir können gerne auch mal nen Onlinetermin machen, wo wir die ganzen Sachen mal durchgehen.
                          Angehängte Dateien
                          OpenKNX www.openknx.de | Kaenx-Creator | Dali-GW

                          Kommentar


                            Hallo Mike,

                            danke für die Erklärung, wobei ich etwas nicht verstehe ...

                            Der "Text Parameter" im Repeat Element soll doch der Parameter sein, der in der ETS dann die Anzahl der zu instanziierenden Module definiert(?). So hatte ich deine vorhergehende Antwort verstanden. Deshalb habe ich da den Parameter Number_Info_Blocks vom Typ PT_Zahl_max_12 (Type NumberUInt) eingeführt.
                            Du schreibst nun ich hätte da Text verwendet. Das passt irgendwie nicht zusammen.

                            Ich würde gerne die variable Variante verwenden, heißt in der ETS festlegen, wie viele Module instanziiert werden.
                            D.h. - wenn ich es recht verstehe - ich muss im Repeat Element "Anzahl = 1" festlegen und im "Text Parameter" den per ETS änderbaren Parameter (z.B.: Number_Info_Blocks).

                            Ich habe gerade mal damit gespielt. Im Repeat Element
                            Anzahl = 1 + Text Parameter NumberUint = 1 -> bekannter Fehler beim Instanziieren in der ETS
                            Anzahl = 0 + Text Parameter NumberUint = 1 -> Instanziiereung ist möglich, allerdings sieht man überhaupt keine Parameter mehr ...

                            Gruß
                            Helmut


                            Kommentar


                              Hallo Helmut,

                              OK mir war nicht ganz klar, dass du das wirklich uber dynamisch machen willst.

                              Dein Number_Info_Blocks muss aber vom Typ NumberUint oder Enum sein.
                              Einen Text kann man nicht multiplizieren.
                              Da 0 mal iwas immer 0 ist versucht die ETS es erst gar nicht es zu konvertieren

                              Gruß Mike
                              OpenKNX www.openknx.de | Kaenx-Creator | Dali-GW

                              Kommentar


                                Hallo Mike,

                                ich bin der Meinung, dass ich es genau so gemacht habe



                                Repeat.png

                                Parameter.png

                                Type.png

                                Das ist doch genau so wie du es beschrieben hast ...

                                Wenn ich den "Text Parameter" über den Checkbutton deaktiviere, kann ich über die Anzahl (aber nur im Creator) die Zahl der Modul Instanzen steuern. Das ist dann identisch mit der manuellen Instanziierung. Ein entsprechender ETS Parameter fehlt allerdings.

                                Gruß
                                Helmut

                                Zuletzt geändert von mobil750; 11.11.2023, 15:39.

                                Kommentar

                                Lädt...
                                X