Ankündigung

Einklappen
Keine Ankündigung bisher.

ESP8266 KNX mit ETS

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

  • thesing
    antwortet
    Sisamiwe :
    Ich habe den ersten Beitrag angepasst.
    Ich empfehle ein NodeMCU-Board. Da ist schon alles drauf. Die Onboard-Led wird zur Programmier-Led und der Flash-Taster zum Programmiertaster.

    Ich habe überlegt das Framework der Demo mit den Zuständen zu einer Lib zu machen. Dann wäre ein Beispielsketch wieder nur eine Datei. Vielleicht integriere ich das auch in die knx-esp Lib. Dann wird die aber noch ESP-spezifischer. Ich dachte eigentlich daran später man normale Arduinos mit TPUART zu unterstützen.
    (Wenn ich mir mal die Hardware besorgt hab.)

    Was meint ihr?

    Einen Kommentar schreiben:


  • Sisamiwe
    antwortet
    thesing
    Zitat von thesing Beitrag anzeigen
    Sisamiwe Wofür genau brauchst du denn eine Anleitung? Sketch kompilieren? Knxprod erstellen? Gerät programmieren?
    Ich habe großes Interesse an der Lösung, da ich ich ein KNX System im Hause habe und das nun durch IoT Devices erweitern will. Dazu möchte ich Deine Lösung testen. Aber irgendwie fehlt mir der Einstieg.

    Vielleicht helfen die Antworten auf die folgenden konkreten Fragen:
    - Wie sieht die Hardwarekonfiguration aus? Ein ESP8266 ist klar, und der Programmiertaster???
    - Wie binde ich Deine Sketches in den eigentlichen Sketch ein oder umgekehrt?

    ​​​​​​​Danke

    Einen Kommentar schreiben:


  • Aquilin
    antwortet
    Super Projekt

    Einen Kommentar schreiben:


  • thesing
    antwortet
    Ich habe nun ein Release von CreateKnxProd auf github erstellt. Einfach zip-Datei runterladen entpacken, ggf. CreateKnxProd.exe.config anpassen und exe starten.

    Einen Kommentar schreiben:


  • thesing
    antwortet
    In der CreateKnxProd.exe.config gibt es eine applicationSettings-Sektion

    Code:
        <applicationSettings>
            <CreateKnxProd.Properties.Settings>
                <setting name="ETS5Path" serializeAs="String">
                    <value>C:\Program Files (x86)\ETS4</value>
                </setting>
            </CreateKnxProd.Properties.Settings>
        </applicationSettings>
    Dort muss der Pfad zu den Dlls eingetragen werden. Der Name ist zwar ETS5Path es muss aber ein Pfad zu den ETS4-Dlls sein.
    Konkret werden Knx.Ets.Converter.ConverterEngine.dll und Abhängigkeiten benötigt.
    Man kann die Dlls auch einfach in das Verzeichnis der exe kopieren. Das Programm startet auch ohne die ETS-Dlls. Diese sind lediglich zum Export als knxprod nötig.
    Zuletzt geändert von thesing; 04.04.2018, 21:02.

    Einen Kommentar schreiben:


  • Bernator
    antwortet
    Zitat von thesing Beitrag anzeigen
    Zur Erstellung der knxprod-Datei sind DLLs von ETS4 nötig. Dazu muss der Pfad dahin in der App.config eingetragen werden.
    könntest du das bitte etwas genauer beschreiben? Welche DLLs muss ich wie in der App.config eintragen?
    Zuletzt geändert von Bernator; 04.04.2018, 08:11.

    Einen Kommentar schreiben:


  • thesing
    antwortet
    Hm. Das scheint ein bekanntes Problem zu sein. Nach dem flashen muss das Geräte einmal manuell resetet werden bevor Softwarereset funktioniert.

    Einen Kommentar schreiben:


  • thesing
    antwortet
    Das passiert bei mir auch. Ich drücke dann einfach die Reset-Taste und probiere es nochmal. Dann klappt es meistens. Ich muss mal schauen ob es eine Methode gibt den ESP neu zu starten bei der er nicht so oft hängt. Falls du eine Idee hast:

    Siehe
    https://github.com/thelsing/knx-esp/...p_platform.cpp

    void EspPlatform::restart()

    Einen Kommentar schreiben:


  • appi
    antwortet
    Nochmals ich:
    EIBD läuft perfekt, wenn ich die Physikalische Adresse programmieren will und dann den Programmierknopf drücke ( LED blinkt schnell ) ändert auch der Status in der ETS5 sehr schnell auf programiert und dann auf Gerät wird neu gestartet und dann ( nach ca. 10 Sekunden ) bricht ETS ab und der Fehler "Das Gerät antwortet nicht" angezeigt.
    Also ETS erkennt das drücken der Programmiertaste auf dem ESP8266, jedoch kommt der Neustart ( ende Programmiermodus ) nicht aktiviert.
    gruss
    Remo

    Einen Kommentar schreiben:


  • thesing
    antwortet
    Sisamiwe Wofür genau brauchst du denn eine Anleitung? Sketch kompilieren? Knxprod erstellen? Gerät programmieren?
    Ich habe leider keine Zeit komplexe Anleitungen zu schreiben. Auf konkrete Fragen antworte ich gern. Vielleicht entsteht dann mit der Zeit ein Anleitung.
    Ich habe nicht die Absicht ein neues konnekting, selfbus o.ä. zu gründen. Mir war nur die Arbeit zu schade um sie auf dem Rechner versauern zu lassen.

    Einen Kommentar schreiben:


  • thesing
    antwortet
    @appi: Wenn du die fertige knxprod-Datei nimmst sollte es auch mit ETS5 gehen. Nur beim Erstellen der Datei brauchst die Dateien von ETS4.
    Hast du einen IP-Router? Den brauchst du. Entweder in Form von knxd oder einen richtigen. Wenn man das Businterface von ETS auf KNX/IP Routing stellt sollte man in der seriellen Konsole vom ETS die Pakete sehen die man im Gruppenmonitor schickt. So lange das nicht klappt, braucht man sich um das Programmieren des Gerätes nicht zu kümmern.

    Einen Kommentar schreiben:


  • Sisamiwe
    antwortet
    Das ganze klingt ziemlich interessant.
    könnte jemand eine etwas genauere Anleitung erstellen?
    Danke schonmal dafür.

    Einen Kommentar schreiben:


  • appi
    antwortet
    Sketch läuft nun perfekt. In der Seriellen Konsole wird alles korrekt angezeigt.
    Das Programmieren aus ETS funktioniert noch nicht, muss aber weiter testen.
    Ich nutze ETS5, ev. muss ich mal eine ETS4 Umgebung aufbauen.

    Einen Kommentar schreiben:


  • thesing
    antwortet
    Es muss schon buttonDown sein. Es hat nur eine Deklaration vor der Benutzung gefeht. Ich habe das geändert. Ich frage mich warum die Fehler bei mir nicht kamen.
    Zur Schaltung: Ich benutze das NodeMCU Board. Dort ist Gpio 16 die On-Board-Led und Gpio 0 der Flash-Taster. Schaltpläne gibt es davon ja genug und bevor ich was falsches sage..

    Rein vom Code her sollte der Button zu GND gehen. Bei der LED ist es eigentlich egal ob die bei GPIO16 high oder low leuchtet. Einen Vorwiederstand brauchst du natürlich je nach Led.

    Einen Kommentar schreiben:


  • appi
    antwortet
    Hallo
    Habe noch einen Fehler
    knx-esp-demo:23: error: 'buttonDown' was not declared in this scope

    attachInterrupt(BUTTON, buttonDown, FALLING);

    denke es müsste so sein :
    attachInterrupt(BUTTON, buttonUp, FALLING);

    so kann ich kompelieren.

    #define LED 16 -> entspricht GPIO 16 gegen Ground? Mit Vorwiederstand?

    #define BUTTON 0 -> entspricht GPIO 0 gegen Ground?

    grussRemo

    Einen Kommentar schreiben:

Lädt...
X