Ankündigung

Einklappen
Keine Ankündigung bisher.

ESP8266 KNX mit ETS

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

    #61
    Nanosonde Ich habe keine Ahnung. Vermutlich wird eine Art Ack Paket gesendet.

    Kommentar


      #62
      Zitat von thesing Beitrag anzeigen
      Nanosonde Ich habe keine Ahnung. Vermutlich wird eine Art Ack Paket gesendet.
      thesing Ich hatte heute hier auch nochmal nachgefragt. Dort ist auch zu lesen, wie es funktioniert.

      Kommentar


        #63
        Durch das XOR wird das Spezialtelegramm für andere KNX-IP Geräte höchstwahrscheinlich ungültig und stört daher nicht. Mir würde etwas Ack-artiges besser gefallen. Aber da würde man für andere Geräte ggf. Wiederholungen erzeugen, wenn kein Ack kommt. Obwohl man das Repeat Flag setzen könnte. Müsste man mal im Standard nachlesen was da spezifiziert ist. Ich mach mir darum Gedanken wenn ich was in Betrieb habe und mich der Paketverlust stört.

        Kommentar


          #64
          Irgendwas mach ich falsch: Hab die NodeMCU V1.0(ESP-12E)

          beim kompilieren folgende Fehlermeldung:
          Documents\Arduino\libraries\knx-esp-master\src/esp_platform.h:1:26: fatal error: knx/platform.h: No such file or Directory
          #include "knx/platform.h"

          Hat möglicherweise wer eine Idee ?
          Hab die IDE 1.8.5

          Kommentar


            #65
            wburst: src/knx ist ein git submodule du musst das entweder mit git auschecken:
            git clone --recurse-submodules https://github.com/thelsing/knx-stack.git
            oder einfach src/knx extra als zip herunterladen und nach src/knx entpacken.

            Kommentar


              #66
              thesing
              danke das wars, hab auf git auschecken vergessen

              Kommentar


                #67
                Hallo thesing,

                wirklich sehr schöne Arbeit, besonders das CreateKnxProd Projekt gefällt mir sehr.
                Ich hatte eigentlich etwas ähnliches vor, aber evtl. kann ich auf deinem Projekt aufsetzen.

                Mich interessiert aber noch folgendes:
                welche XSD hast du für die Generierung des XML Models genommen?
                So wie ich das sehe, ist das ein XML Format, aus dem die dll dann eine knxprod erstellt?!

                Woher nimmst du die Infos, wie der Input für die dll aussehen muss?

                Ich hatte eigentlich vor, ein Tool zu bauen, welches eine bestehende knxprod, bzw. die XML darin in Tabellen zerlegt, anzeigt und vorgenommene Änderungen speichern kann.
                So wie ich das sehe, ist das so mit deinem Tool bisher nicht möglich?!
                Ich würde gerne bestehende BCU2 bzw. BIM112 Geräte nachbauen, bzw. auch verändern.
                Die Anzeige der dazu nötigen Informationen ist mit den mir bisher zur Verfügung stehenden Tools nicht so richtig gut.

                Bisher hatte ich aus der knxprod die XML extrahiert, diese durch einen XML->XSD converter (online) gejagt und anschließend mit jaxb oder pyxb ein funktionerendes model zu erstellen. Leider habe ich dait bisher überhaupt keine Erfahrung und somit ist dieses ein recht aufwendiges Projekt (für mich)

                Eventuell kannst du mir ein paar Hinweise geben, wie du zu diesem Ergebnis gekommen bist, ich würde dann versuchen das Tool weiter zu entwickeln.

                Grüße,
                Olli
                Zuletzt geändert von olterion; 16.05.2018, 22:19.

                Kommentar


                  #68
                  Hallo olterion ,

                  die xsd steckt in der Datei Knx.Ets.Xml.ObjectModel.dll. Die befindet sich im ETS-Verzeichnis. Einfach eine Referenz zu der dll zu einem Projekt hinzufügen und dann:
                  Code:
                            
                  using (var fileStream =  new FileStream("knx.xsd", FileMode.Create))
                  using (var stream = DocumentSet.GetXmlSchemaDocumentAsStream(KnxXmlSchemaVersion.Version14))
                  {
                      while (true)
                      {
                          var buffer = new byte[4096];
                          var count = stream.Read(buffer, 0, 4096);
                          if (count == 0)
                              break;
                  
                          fileStream.Write(buffer, 0, count);
                      }
                  }
                  Um rauszukriegen was ETS in der Datei haben will, kann man in die Hilfe vom Manufacturer Tool schauen. Die liegt im Help Order des Installationspfads.
                  Sonst kann man bestehende knxprods auspacken und analysieren. Den Rest kriegt man durch Experimente raus und durch die knx-Spec raus.
                  Für das signieren ist übrigens nur wichtig, dass die XML-Struktur der xsd entspricht. Inhaltlich meiner Erfahrung nach wenig geprüft.

                  Das Tool kann aktuell keine bestehende knxprod einlesen. Es ist eher dazu gedacht sehr einfache knxprods zu erstellen. Man kann es aber sicher zu einer Alternative des Manufacturers Tool ausbauen

                  Ich hoffe das hilft erst mal weiter.
                  Ich warte gespannt auf Pull-requests
                  Zuletzt geändert von thesing; 17.05.2018, 21:22.

                  Kommentar


                    #69
                    Kurzes Update:

                    Ich habe CreateKnxProd jetzt so erweitert, dass als Medium zwischen IP und TP wählen. kann.

                    Kommentar


                      #70
                      Frage: wie kann mann bestehende knxprods auspacken? Die sind ja mit ein password gesichert.

                      Kommentar


                        #71
                        Die knxprod-Dateien sind normale Zip-Archive ohne Passwort. Ältere Formate kann man mit ETS ins knxprod-Format konvertieren.
                        Zuletzt geändert von thesing; 14.06.2018, 19:24.

                        Kommentar


                          #72
                          Stimmt. Danke.

                          Kommentar


                            #73
                            Ich versuche knxprod zu erstellen auf basis TP. Irgentwie gelingt das nicht (ETS sieht ein fehler). Kannst du vielleicht ein funktionierendes xml Datei bereitstellen so das ich vergleichen kann? (das ubersetzen von xml nach knxprod wirkt).

                            Inzwischen gelöst. Es braucht ein anderes (neues) Catalogitem Id, wenn mann medium typ wechselt. Im hintergrund bleiben anscheinend sachen gespecihert, auch wenn das Device gelöscht wird.
                            Zuletzt geändert von knxruth; 12.08.2018, 16:52. Grund: Gelöst.

                            Kommentar


                              #74
                              Schön das du heraus gefunden hast woran das genau liegt. Ich habe bei mir einfach wild Ids verändert bis es geklappt hat.

                              Kommentar


                                #75
                                Hallo allerseits,

                                ich habe angefangen unter https://github.com/thelsing/knx-samd eine Version für samd21 und tpuart zu erstellen. Es ist alles soweit programmiert. Da meine NCN5120 Hardware sich seltsam verhält, habe ich mir einen Arduino Zero Clone aus China bestellt. Wenn der da ist werde ich eine Siemens BCU kaufen und weiter testen.
                                Ich erwarte nicht, dass der aktuelle Stand schon funktioniert. Falls jemand Lust hat zum Testen und Bugs zu beheben ist er dazu herzlich eingeladen. Ich werde wohl erst in ein paar Wochen dazu kommen, wenn die neue Hardware da ist.

                                Kommentar

                                Lädt...
                                X