Ankündigung

Einklappen
Keine Ankündigung bisher.

Release: 1.0.0 BETA4

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

    Release: 1.0.0 BETA4

    Hallo zusammen,

    nach fast genau 6 Monaten Entwicklungszeit und zahlreichen Codeänderungen, stellen wir Euch stolz KONNEKTING 1.0.0 Beta4 vor. Alles Details dazu könnt ihr in unserem Blog nachlesen:

    http://www.konnekting.de/2016/10/10/release-beta-4/


    Viel Spaß damit,
    Das Konnekting-Team
    Zuletzt geändert von tuxedo; 24.01.2017, 13:14. Grund: Infos in Blog ausgelagert

    #2
    Klasse!
    Danke für deine Arbeit. Ich finde aber, dass der Name (beta3 zu beta4) den Verbesserungen nicht gerecht wird.
    Aber das ist nicht so schlimm!

    Kommentar


      #3
      Wie meinst du das? "nicht gerecht wird"?!

      Wäre dir ein Versionssprung auf "beta8" lieber gewesen? Dann warte erstmal auf beta5 ;-)

      Kommentar


        #4
        Ich wollte damit v.a. meine Begeisterung und Bewunderung über deine Arbeit zum Ausdruck bringen. Und ich hab den Smiley gesehen.
        Aber tatsächlich wäre 1.1beta1 passender, da Features hinzu gekommen ist und die beta4 Sketche nicht kompatibel sind.
        Aber das ist eine eher akademische Diskussion!

        Kommentar


          #5
          Naja, wir sind ja noch in der Findungsphase. 1.0.0-STABLE wird's dann, wenn ich für's erste zufrieden bin :-) Dann sehen wir weiter.

          Kommentar


            #6
            Hallo,

            ich habe gerade die Beta4 Installiert.
            Wenn ich die Entwicklung richtig verfolgt habe, ändern sich ja die Zuordnungen:
            Code:
            KnxComObject KnxDevice::_comObjectsList[] = {
                /* don't change this */ Tools.createProgComObject(),
            
                // Currently, Sketch Index and Suite Index differ for ComObjects :-(
            
                /* Sketch-Index 1, Suite-Index 0 : */ KnxComObject(KNX_DPT_9_001, COM_OBJ_SENSOR),  // Temp
                /* Sketch-Index 2, Suite-Index 1 : */ KnxComObject(KNX_DPT_1_001, COM_OBJ_SENSOR),  // Lower Boundary reached
            wird
            Code:
            KnxComObject KnxDevice::_comObjectsList[] = {
                /* don't change this */ Tools.createProgComObject(),
            
                // Fortunately, Sketch Index and Suite Incex are the same now
                /* Sketch-Index 1, Suite-Index 1 : */ KnxComObject(KNX_DPT_9_001, COM_OBJ_SENSOR),  // Temp
                /* Sketch-Index 2, Suite-Index 2 : */ KnxComObject(KNX_DPT_1_001, COM_OBJ_SENSOR),  // Lower Boundary reached
            Allerdings habe ich hier nun nur Kommentare geändert...

            Oder ist es so richtig:
            Code:
            KnxComObject KnxDevice::_comObjectsList[] = {
            
                // Fortunately, Sketch Index and Suite Incex are the same now
                /* Sketch-Index 1, Suite-Index 1 : */ KnxComObject(KNX_DPT_9_001, COM_OBJ_SENSOR),  // Temp
                /* Sketch-Index 2, Suite-Index 2 : */ KnxComObject(KNX_DPT_1_001, COM_OBJ_SENSOR),  // Lower Boundary reached

            Muss ich im Code oder der XML sonst noch etwas ändern?
            (ich lese gerne eine Umstiegs-Doku. Bitte gerne ein Link; habe nur nichts gefunden)

            P.S.:
            Ich hatte auch überlegt, den Code-Generator zu nutzen. Der startet aber nicht -es gibt auch keine Fehlermeldung in der Kommandozeile.

            Gruß,
            Hendrik

            Kommentar


              #7
              Die XML hat sich geändert, es wurden z.B. alias Namen hinzugefügt. Deswegen will der Code-Generator nicht laufen. Eine userfreundlichere Version ist in Vorbereitung
              wenn du schnell testen willst, dann kannst du vorerst bei beta3 bleiben, wenn du wirklich umsteigen willst, dann lies bitte Doku auf github, die die XML Struktur beschreibt. Und schau die Beispielsketches an, dann sieht du auch die Codeänderungen (z.B statt Tools Konnekting)

              Kommentar


                #8
                Zitat von Eugenius Beitrag anzeigen
                Die XML hat sich geändert, es wurden z.B. alias Namen hinzugefügt. Deswegen will der Code-Generator nicht laufen. Eine userfreundlichere Version ist in Vorbereitung
                Ok, dann bleibe ich erstmal bei der beta3. Aber der Code-Generator startet gar nicht erst.
                Das ist also von der XML erstmal unabhängig.

                Gruß,
                Hendrik

                Kommentar


                  #9
                  Zitat von henfri Beitrag anzeigen
                  Ok, dann bleibe ich erstmal bei der beta3. Aber der Code-Generator startet gar nicht erst.
                  Das ist also von der XML erstmal unabhängig.

                  Gruß,
                  Hendrik
                  Code-Generator hat (noch) keine UI... d.h. deine XML auf die bat Datei per Drag&Drop platzieren und es wird alles in der Commandozeile erledigt.

                  Kommentar


                    #10
                    Ah!

                    Kommentar


                      #11
                      Du kannst die XML auch per Drag'n'Drop mit der BAT Datei des Codegenerators starten. Dann sparst du dir die Kommandozeile. Die Header-File wird dann im selben Verzeichnis wie die BAT Datei abgelegt.

                      Kommentar


                        #12
                        Die AliasName sind optional und "sollten" nicht stören. Zur Erklärung Beta3->Beta4:

                        Für die Programmierung über den Bus braucht es seitens Arduino ebenfalls ein KommunikationsObjekt (kurz KO, bzw. "ComObj").

                        Die KOs werden im Arduino Code in einem Array vorgehalten.

                        Code:
                        KnxComObject KnxDevice::_comObjectsList[] = { .... }
                        Solche Arrays haben Indizes, beginnend mit 0.

                        Das Erste Element im Array hat also Index 0, das Zweite 1, das Dritte 2, ...

                        Nun definiert man in der XML ja seine eigenen KOs. Und die fangen auch da mit ID=0 an.

                        Problem bis beta3 war nun, dass das KO das wir intern für die Programmierung brauchen an Array-Index 0 liegen MUSSTE.

                        Daraus folgte, dass das erste KO aus der XML, das dort die ID=0 trägt, im Arduino Code im Array an Index 1 liegt, weil Index 0 bereits durch das Programmier-KO belegt war.

                        Ergo:

                        KO aus der XML mit ID=0 ----> liegt im Array an Index=1
                        KO aus der XML mit ID=1 ----> liegt im Array an Index=2
                        ...

                        Das hat aber zu verwirrungen geführt. Man hatt noch im Kopf dass ein KO mit ID x existiert, aber im Code musste man es dann mit "x+1" ansprechen... Ungeschickt...


                        In Beta4 hat sich das geändert und das Programmier-KO muss

                        1) nicht mehr selbst im Array abgelegt werden
                        2) trägt die interne ID=255

                        Somit ist im Array wieder Index 0 frei und das erste KO mit ID=0 liegt nun im Array an Index 0.

                        Damit wird aus dem Beta3 Code:

                        Code:
                        KnxComObject KnxDevice::_comObjectsList[] = {
                            /* don't change this */ Tools.createProgComObject(),
                        
                            // Currently, Sketch Index and Suite Index differ for ComObjects :-(
                        
                            /* Sketch-Index 1, Suite-Index 0 : */ KnxComObject(KNX_DPT_9_001, COM_OBJ_SENSOR),  // Temp
                            /* Sketch-Index 2, Suite-Index 1 : */ KnxComObject(KNX_DPT_1_001, COM_OBJ_SENSOR),  // Lower Boundary reached
                        folgender Beta4 Code:

                        Code:
                        KnxComObject KnxDevice::_comObjectsList[] = {
                            /* Sketch-Index 0, Suite-Index 0 : */ KnxComObject(KNX_DPT_9_001, COM_OBJ_SENSOR),  // Temp
                            /* Sketch-Index 1, Suite-Index 1 : */ KnxComObject(KNX_DPT_1_001, COM_OBJ_SENSOR),  // Lower Boundary reached
                        Und bevor es zu weiteren verwirrungen kommt, kann man den Kommentar noch ganz streichen:

                        Code:
                        KnxComObject KnxDevice::_comObjectsList[] = {
                            KnxComObject(KNX_DPT_9_001, COM_OBJ_SENSOR),  // Temp
                            KnxComObject(KNX_DPT_1_001, COM_OBJ_SENSOR),  // Lower Boundary reached
                        Hoffe das hilft beim Verständnis.

                        Kommentar


                          #13
                          Danke!

                          Dann ist der Umstieg ja wahrscheinlich einfach.

                          Gruß,
                          Hendrik

                          Kommentar


                            #14
                            Codegenerator ....

                            Ich habe mir jetzt mal die Suite angeschaut, müsste ja das hier sein:

                            https://github.com/KONNEKTING/Konnek...ag/1.0.0-BETA4

                            Ich find da nix zum Code generieren. Vielleicht hab ich ja was übersehen, bin auf Debian. Wenn ich den Namen des Tools kenne, find ich es wahrscheinlich auch, kann mir dazu einer was sagen?
                            Kein Support per PN: Fragen bzw. Fehlermeldungen bitte im Forum posten.

                            Kommentar


                              #15
                              Ist mit dabei. Gibt für windows ne extra BAT Datei. Daran kannst du dich orientieren.
                              Für Beta5 gibt's dann eine GUI.

                              Kommentar

                              Lädt...
                              X