Ankündigung

Einklappen
Keine Ankündigung bisher.

ESP8266 KNX mit ETS

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

  • Nanosonde
    antwortet
    Hallo zusammen,

    leider klappt es bei mir mit der ETS5 nicht.
    Welche Versionsnummer genau setzt Ihr denn ein?
    Ich habe hier 5.6.2 (build 842).

    Physikalische Adresse schreiben klappt.
    Er kommt jetzt auch beim partiellen Programmieren deutlich weiter.
    Aber kurz vor Ende bekomme ich immer den Fehler "Address is not valid 27351679".

    Error.PNG
    .
    appi
    Das Projekt verwendet GIT submodules.
    Daher musst Du es so auschecken: git clone --recurse-submodules https://github.com/thelsing/knx-stack.git

    Übrigens:
    Kennt Ihr das Tool Net'n'Node von Weinzierl? Es gibt eine kostenlose Version davon.
    Damit kann man sich unter Tools->Edit Properties alle Objekte mit ihren Properties inkl. Descriptions usw. anzeigen lassen.

    Leider kommt schon der einfache Scan nicht sehr weit. Es werde keine Standard Objekte angezeigt wie zum Beispiel Device Object, Address Table Object, etc.
    Das ist recht hilfreich beim Debuggen.

    Der Screenshot zeigt den Scan der MDT Wetterstation.

    image_72385.png
    Zuletzt geändert von Nanosonde; 22.04.2018, 17:40.

    Einen Kommentar schreiben:


  • Dragonos2000
    antwortet
    thesing
    Ist es beabsichtigt, dass bei den Parametertypen die Zahlen immer mit 4 Byte definiert werden? Im Beispiel Sketch ist das Array Element zum Tempabgleich dann mit 1 Byte deklariert, was beim kurzen Antesten dann auch die komischen Resultate im seriellen Monitor erklären könnte, die ich für diesen Parameter hatte.

    appi /src/knx musste ich separat vom GIT downloaden und an die richtige Stelle kopieren.

    Einen Kommentar schreiben:


  • appi
    antwortet
    Hallo
    nach einer schlechten Zeit ( migration von EIBD nach KNXD ) würde ich auch gerne wieder testen. Jedoch scheitere ich bereits beim Einbinden der Librarys.
    Verstehe das Verzeichnis /src/knx nicht welches leer ist. esp_plattform.h wir im Verzeichnis /src/knx gesucht
    Habe ich was übersehen und falsch installiert?

    Einen Kommentar schreiben:


  • Dragonos2000
    antwortet
    Ja, jetzt sieht das besser aus mit der ETS5

    Einen Kommentar schreiben:


  • thesing
    antwortet
    Ich habe nun den Code auf github geändert. Ich konnte meine Linux-VM nun mit ETS5 programmieren. Viel Spaß beim probieren.

    Einen Kommentar schreiben:


  • thesing
    antwortet
    Hallo allerseits,

    da ist man eine Woche im Urlaub und schon tut sich einiges. Zur ETS5: Die will vom Gerät wissen, wie groß de Einträge in der Assoziationstabelle sind (2 Byte oder 4 Byte). Das werde ich wohl am Wochenende implementiert haben. Die ETS4 geht einfach von 2 Byte pro Eintrag aus. Ob dies das einzige Problem ist, wird sich dann zeigen.

    Einen Kommentar schreiben:


  • Nanosonde
    antwortet
    Die KONNEX sollte es so wie Apple machen: für den Softwareentwicklungseigenbedarf zu Hause mit den eigenen Geräten sollte es sogar aktiv unterstützt werden, dann könnten die generierten .knxprod-Files an die eigene ETS gebunden werden, so dass sie nicht verteilt werden können.
    So, nachdem nun alle ihre Bedenken geäußert haben, können wir ja wieder zum technischen Teil übergehen.

    Das Tolle an dieser Lösung ist ja, dass - sobald erste KNX-IP(only) Geräte (z.B. Weinzierl KNX Multi IO 580 IP) auf den Markt kommen - es dafür zwangsweise eine .knxprod geben muss. Dann nimmt man halt die und emuliert das Gerät, fertig. Für einfache I/O-Geräte sollte das ja kein Problem sein.

    Ich habe mir inzwischen auch mal eine Entwicklungsumgebung für den Stack unter Linux aufgesetzt, um herauszufinden, warum die ETS5-Programmierung nicht klappt.
    Zuletzt geändert von Nanosonde; 20.04.2018, 14:52.

    Einen Kommentar schreiben:


  • tuxedo
    antwortet
    Zitat von thesing Beitrag anzeigen
    Hallo,

    zum rechtlichen: Ich bin kein Anwalt.
    Wer von uns ist das schon :-)

    Daher möchte ich dazu keine große Diskussion eröffnen. Aber trotzdem kurz meinen (!) Standpunkt:
    - Ich glaube nicht, dass man das entpacken eins Zip-Archives und das Lesen von XML-Dateien als Reverse Engineering bezeichnet kann.
    Reverse Engineering ist das auf jeden Fall. Aber rechtlich halte ich das in genau diesem Fall für nicht wirklich relevant.

    - Ein Programm das ähnliche XML-Dateien erstellen kann halte ich auch für harmlos.
    Stimme ich dir zu. XML Dateien erstellen ist rechtlich kein Problem. Auch wenn diese den XML Dateien denen in der knxprod von der Struktur her entsprechen.

    Wenn der Aufruf von Methoden aus fremden Dlls halte ich auch nicht für illegal.
    Ich bin, wie du auch, kein Anwalt. Aber ich weiß, dass wenn man einen "Schutz umgeht", man sich rechtlich in einer grauen bis tief schwarzen Zone bewegt.
    Die KONNEX bietet gegen einiges an Geld und Co. die Developer Tools an. Mit diesem Tools kannst du knxprod Files erzeugen. Und diese kann die ETS dann auch importieren. Die ETS verweigert aber "unsignierte" Files.

    Wenn du jetzt die DLLs aus der ETS verwendest um damit entgegen der Vorstellung und den Eulas und was weiß ich der KONNEX selbst "signierte Produktdatenbanken" generiest... Puuh. Ich weiß nicht... Ich hatte schon mit den Juristen der KONNEX (oder deren Gehilfen, weiß nicht mehr so genau) schon regen Emailkontakt. Ging um ein anderes Thema. Aber die Quintessenz aus dem Emailverkehr war: Die KONNEX lässt das keinen Spielraum. 0.

    - Es kann sein, dass durch das Erstellen von .knxprod-Dateien gegen irgendwelche Klauseln der Lizenz von ETS verstößt. Aber das Programm dient in dem Fall nur zu Demonstration des Machbaren.
    Logo. Machbarkeitsstudien sind das eine. Aber der Thread hier läuft gefahr dass viele das ignorieren und es einsetzen. Und du lieferst mit der Software auch noch die Vorlage. Ich bin kein Anwalt... Aber mir wäre das zu heiß...

    - Viele Projekte wie z.B. Openwrt und andere Linux auf Toaster sind durch Reverse Engineering entstanden.
    Man kann reverse engineering auch "legal" betreiben. Will jetzt hier keinen Vortrag halten, aber googelt mal nach white-box reverse engineering.

    - Beim Selfbus-Projekt wird ähnlich vorgegangen. Dort wird eine vd1-Datei erzeugt, die dann in ETS importiert werden kann (und dabei konvertiert wird)
    Auch das halte ich für fraglich, wenn auch nicht ganz so fraglich wie "sich des Zertifikats der KONNEX zum signieren von Dateien" zu bemächtigen. Ich meine "damals" gab es bei den vd1 Dateien ein einfaches Passwort, das überall gleich war. Das Prozedere ist das gleiche: Es stellt eine Art Schutz dar (ob der gut oder schlecht ist sei mal dahingestellt). Aber eine Signatur ist doch nochmal was anderes als ein Passwort zu "kopieren".

    - zur weiteren Roadmap: Ich weiß nicht wie viel Zeit ich in Zukunft in das Projekt stecken kann. Ich habe in den letzen Wochen relativ viel Zeit investiert, das es schon zu gut funktioniert hat. Ich wolle das nicht 80% fertig auf meinem Rechner vergammeln lassen. Nun ist der Frühling da und meine Außenanlagen wollen angelegt werden (Terasse, Wege, Carport etc.). Aktuell will ich sicher stellen, das der Code nicht nur bei mir funktioniert. Dann will ich aus dem Feedback wenigstens ein paar Readmes auf Github schreiben. CreateKnxProd soll auch noch Englisch lernen. Außerdem will ich mit dem Stack und einem BME680 meine Lüftung steuern. Dann gibt es noch diese sonoff Schalter die ich mal testen wollte...
    Kurz: Nichts ist fest und Hilfe willkommen
    Ganz ehrlich: Das beisst sich mit "Aber das Programm dient in dem Fall nur zu Demonstration des Machbaren.". Aber ganz gewaltig.

    Just my 5 cent. Und ich drücke dir die Daumen dass du KEINE Post von der KONNEX erhälst...

    Einen Kommentar schreiben:


  • Dragonos2000
    antwortet
    Hab's mit Arduino Version 1.8.0 und ESP 2.4.1 versucht.

    Einen Kommentar schreiben:


  • Nanosonde
    antwortet
    Zitat von Dragonos2000 Beitrag anzeigen
    Also PA mit ETS5 programmieren klappt (vom Reboot Problem abgesehen), aber beim schreiben der Parameter mittels ETS fällt er mit dem Fehler "Es wurde versucht, einen geschützten oder nicht vorhandenen Speicherbereich zu lesen."
    Hmmm...

    lg
    Jochen.
    Hi!
    Nutzt Du die ESP Plattform oder Linux?

    Ich teste gerade Linux und habe den gleichen Fehler. Das Schreiben der PA klappt aber.


    thesing

    Noch eine Frage zu ETS5 und KNX-IP:
    Das Gerät meldet sich ja mit der Maske 57B0, also ein KNX-IP Device.
    Wenn ich jetzt nur die ETS5 ohne irgendwelche Interfaces oder Router hätte, dann müsste sich das Gerät ja per IP auch programmieren lassen.
    Was taucht denn dann unter Schnittstellen auf? Gar nichts vermutlich, oder?

    UPDATE: Habe es gerade ausprobiert. Wenn keine Interfaces vorhanden sind, dann öffnet ETS5 automatisch eine IP Multicast Verbindung.
    Sowohl für alle Diagnosefunktionen (Gruppenmonitor, Busmonitor, Abfrage Programmiermodus, etc.) als auch für den Versuch das Testgerät (Temperatursensor) zu programmieren.

    Was genau hast Du denn jetzt bereits identifiziert, was die ETS5 anders macht als die ETS4?


    Einen Kommentar schreiben:


  • Dragonos2000
    antwortet
    Also PA mit ETS5 programmieren klappt (vom Reboot Problem abgesehen), aber beim schreiben der Parameter mittels ETS fällt er auf die Nase mit dem Fehler "Es wurde versucht, einen geschützten oder nicht vorhandenen Speicherbereich zu lesen."
    Hmmm...

    lg
    Jochen.
    Zuletzt geändert von Dragonos2000; 19.04.2018, 14:29.

    Einen Kommentar schreiben:


  • Dragonos2000
    antwortet
    Genial und vielen Dank dafür!
    Ich bastle eh gerade an einem Controller für SK6812 RGBW Stripes auf Basis ESP8266, da kann ich den sogar direkt an KNX anbinden (bisher HTTP Schnittstelle).

    lg
    Jochen.

    Einen Kommentar schreiben:


  • Nanosonde
    antwortet
    Hallo @thesing,

    ich bin unglaublich begeistert. Das ist genau das, was bisher immer gefehlt hat.
    Wie ich sehe, hast Du wirklich auch den ganzen notwendingen KNX Management-Teil inkl. Transport-Layer gebaut.

    Ich selbst saß bis jetzt nämlch auch an so einer KNX-IP Lösung, die sowas irgendwann mal können sollte (Zeit ist das Problem).
    Zur einfacheren Handhabung (und meinem Verständnis!) habe ich das alles bis jetzt in PHP gebaut. Auch eine erste Version des Transport-Layers. Allerdings bist Du ja schon viel weiter.
    Und vor allem auch Plattform übergreifend. Dann kann ich das ganze ja auch direkt auf meinem RPi0W laufen lassen.

    Diese Lösung stellt alle Anderen, die alle nur Gruppenkommunikation beherrschen, in den Schatten!

    Einen Kommentar schreiben:


  • thesing
    antwortet
    Ja du hast völlig recht. Habe ich ergänzt. Danke!

    Einen Kommentar schreiben:


  • thesing
    antwortet
    Das Problem beim Zuweisen der physikalischen Adresse habe ich behoben. Allerdings gibt es ein weiters Problem. Ich muss noch etwas Implementieren, was ETS4 nicht brauchte.

    Einen Kommentar schreiben:

Lädt...
X