Ankündigung

Einklappen
Keine Ankündigung bisher.

ESP8266 KNX mit ETS

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

    Hallo,

    Zitat von thesing Beitrag anzeigen
    Geht das SONOFF inzwischen eigentlich? Sonst muss ich mich damit nochmal auseinandersetzen.
    Leider nicht. Ich bin noch nicht dazu gekommen, das zu debuggen.

    Zitat von thesing Beitrag anzeigen
    Der ESP8266 soll übrigens zu viel Strom verbrauchen um den nur vom Bus zu versorgen. Ein Netzteil bräuchtest du also trotzdem noch.
    Da bin ich nicht sicher... Schau mal hier:
    file.php?id=177&sid=92cf302cd87b179acf32decdbec6927f.jpg

    Man liegt da bei 140mA und 3.3V bei 460mW. Ein KNX-Gerät darf 290mW ziehen. Die 460mW treten aber ja nur beim Senden auf, also nur kurz, vermute ich.
    Jetzt hat man natürlich Verluste beim Wandeln der Spannung.
    Scheint mir nicht eindeutig, ob das gehen wird. Allerdings kann die Siemens-BCU nur 50mA. Die MicroBCU 100mA. Vielleicht kann man für die Momente, wo der ESP sendet mit einem Kondensator puffern...

    Edit: So ein Quatsch: In dem Fall, den wir diskutieren, brauchen wir Wlan ja gar nicht. Dann sind wir bei 15mA und das sollte ja auf jeden Fall gehen.

    Bei ETS5 hast du wahrscheinlich das falsche Verzeichnis eingestellt. Richtig ist sowas wie: C:\Program Files (x86)\ETS5\CV\4.0.1997.50261
    So funktioniert es, danke. Wäre es nicht sinnvoll den Pfad im Beispiel so anzupassen? Selbst wenn die Ziffernfolge bei mir anders gewesen wäre, wäre ich dann wohl hoffentlich drauf gekommen.

    Gruß,
    Hendrik
    Zuletzt geändert von henfri; 26.01.2019, 15:02.

    Kommentar


      Hallo,

      noch etwas anderes:
      hat sich jemand schon mit der Möglichkeit beschäftigt, eine RGB-Lampe wie:
      https://github.com/arendst/Sonoff-Ta...f-B1-and-B1-R2
      https://github.com/arendst/Sonoff-Ta...rip-controller

      über die Lib zu steuern?
      Es sollte doch -sobald man weiß, an welchem GPIO die jeweilige LED hängt recht einfach möglich sein, oder?

      Ich finde aber z.B. keine Methode um DPT5 zu lesen, sondern nur:
      Code:
      int32_t GroupObject::objectReadFloatDpt9()
      bool GroupObject::objectReadBool()
      Gruß,
      Hendrik
      Zuletzt geändert von henfri; 27.01.2019, 14:59.

      Kommentar


        Hallo,

        ich versuche gerade an meinen BME680 eine weitere GA via ETS zu programmieren (Widerstand (Gas)). Das programmieren gelingt mir aber nicht.
        Es ist doch richtig, dass ich den Programmierbutton vorher nicht drücken muss, oder? (habe allerdings beides versucht)
        Und ist es normal, dass ich an der seriellen Schnittstelle nichts von dem Programmierversuch mitbekomme?

        Gruß,
        Hendrik
        Angehängte Dateien

        Kommentar


          Guten Morgen,

          hätte da noch eine Anfängerfrage: Habe mir für die Arduino entwicklung Eclipse installiert und kann auch erfolgreich compilieren und proggen, allerdings nur mit den standard arduino libs. Thesings knx stack aus github habe ich in .arduinocdt\libraries\knx kopiert und die lib dann im Arduino Download Manager sowie den Projekteigenschaften in Eclipse hinzugefügt. Allerdings reicht für die knx-demo das #include <knx.h> nicht, ich muss zusätzlich noch knx/group_object.h inkludieren. Soll das so sein? Glaub ich mach da was falsch. Außerdem ist SerialDBG nicht definiert...

          Edit: Taste mich erstmal langsam voran: Habe jetzt ein leeres Arduino Projekt in Eclipse angelegt und die Libs für den SAMD eingebunden. Als Target habe ich einen Arduino/Genuino Zero ausgewählt. Das kompiliert soweit. Sobald ich jedoch Thesings KNX Lib auswähle meckert er weil LinuxPlatform nicht deklariert wurde (C:/Users/Klayman/.arduinocdt/libraries/knx/src/linux_platform.cpp:325:6: error: 'LinuxPlatform' has not been declared). Da kann doch was nicht stimmen, oder??

          Danke,
          Klayman
          Zuletzt geändert von klayman; 27.01.2019, 11:51.

          Kommentar


            @klayman: Da war ein #endif an der falschen Stelle. Ich habe eine Fix gepusht.

            @henfri: Die Lampe sollte machbar sein. Ich hab verschiedenen Datenpunkttypen noch nicht implementiert. Du musst jedoch nur zwei Methoden zum lesen und schreiben zu group_object.{h, cpp} hinzufügen. Siehe dazu auch https://github.com/thelsing/knx/issues/8.
            Wenn du einmal eine PA programmiert hast, ist danach der Programmiermodus nicht mehr nötig. Der ESP reagiert nicht mehr, nachdem ETS die Version lesen will.
            Ich muss mal versuchen das nach zu stellen. Ich komme leider frühestens am WE dazu. Muss leider auf Dienstreise.

            Zum ESP: Ich habe Betrieb am Bus nicht getestet und weiß nicht wieviel so ein TPUART oder NCN liefert. Müsste man testen.

            Kommentar


              Hallo,
              erstmal großes Lob thesing. Tolle Arbeit.
              Ich versuche gerade ein eigenes *.knxprod mit dem CreatKnxProd Tool zu erstellen. Ich habe den Release 1.1 aus Github herruntergeladen und in der config den ETSPath auf:
              C:\Program Files (x86)\ETS5\CV\4.0.1997.50261 angepasst. Leider kommt beim generieren der *knxprod Datei eine Fehlermeldung mit der ich gar nichts anfangen kann:
              exception.jpg
              Kann mir da bitte jemand weiterhelfen? Danke schonmal und viele Grüße
              h1as

              Kommentar


                Hallo h1as,
                kannst du bitte die xml die du genutzt hast ranhängen? Dann kann ich mir das mal am WE anschauen.

                Kommentar


                  Habe heute mal Zeit gefunden meine VisualGDB aufzusetzen - bekomme aber das Projekt nicht fehlerfrei geladen, da ich nur die Embedded Edition lizensiert habe - gibt es eine einfache Möglichkeit ohne Linuxanforderung auszukommen?

                  Gruß
                  Dieter

                  Kommentar


                    Ich weiß nicht welche Edition von VisualGDB für die Arduino-Projekte nötig ist. Wenn du die Arduino-Version nutzen möchtest, kannst du das Linux-VGDB Projekt einfach entfernen. Das sollte sich auch direkt unter Linux mit cmake bauen lassen.

                    Kommentar


                      Hallo,
                      Zitat von thesing Beitrag anzeigen
                      Ich muss mal versuchen das nach zu stellen. Ich komme leider frühestens am WE dazu.
                      hattest du schon Zeit, dir mein Problem mit dem Programmieren über die ETS anzuschauen?

                      Zum DPT 5:
                      Ich habe mir das jetzt eine Stunde angesehen und fürchte, dass ich da keinen Mehrwert leisten kann.
                      Ich bin bis hier gekommen:
                      https://github.com/knxd/knxd/blob/e5...convert.c#L413

                      Da scheint mir aber unsigned8FromPayload zweimal (einmal im switch, einmal darunter) aufgerufen zu werden. Das verstehe ich nicht.

                      Letztlich habe ich verstanden, dass zwischen DPT 5, 5.001, 5.003, 5.006 unterschieden und bei den Sub-Typen noch die Konvertierung in Prozent/Grad durchgeführt wird. Der roh-wert kommt hierher:
                      Code:
                      uint8_t unsigned8FromPayload(const uint8_t *payload, int index) {
                          return (uint8_t)payload[index];
                      }
                      Index ist immer 0.

                      Aber weiter komme ich nicht, fürchte ich.

                      Gruß,
                      Hendrik

                      Kommentar


                        Hallo Hendrik,

                        funktioniert bei dir der ESP8266 als TP-Gerät überhaupt?

                        Bei mir zumindest startet der ESP8266 zumindest, wird aber immer nach 5 Sekunden vom Watchdog neu gestartet.

                        Gruß

                        Mag Gyver
                        Zuletzt geändert von Mag Gyver; 10.02.2019, 10:52.

                        Kommentar


                          Ich hab das noch nicht probiert.
                          Nutze noch IP

                          Kommentar


                            Hallo Hendrik,

                            damit sollten die Rohdaten des DPT 5 vom Bus abgefragt werden können (ungetestet).

                            Die unten stehenden Code-Zeilen an den genannten Stellen zusätzlich einfügen, jedoch nichts überschreiben.
                            Die Konvertierung (Interpretation) kannst du dann einfach mit einer anderen Funktion erledigen lassen oder direkt in deinem Sketch verwalten lassen.
                            An der Funktion "objectReadFloatDpt9" kannst du dich dazu orientieren.








                            In "group_object.h" Zeile 59

                            Code:
                            uint8_t objectReadByte();

                            In "group_object.cpp" Zeile 168
                            Code:
                            uint8_t GroupObject::objectReadByte()
                            
                            {
                              return _data[0];
                            }



                            Grüße

                            Mag Gyver
                            Zuletzt geändert von Mag Gyver; 10.02.2019, 15:49.

                            Kommentar


                              @henfri: Ich habe bei mir hin und her parametriert und bin auf keine Probleme gestoßen. Kannst du die printHex Anweisung in esp_platform.cpp mal einkommentieren? Dann sieht man, was beim Esp ankommt, und verschickt wird.

                              Kommentar


                                Hallo,

                                mag Gyver: vielen Dank. Das kompiliert schonmal.

                                @Thesing:
                                Habe ich gemacht und habe dabei den Fehler auch reproduzieren können.
                                Und tatsächlich habe ich es auch einmal geschafft, erfolgreich zu parametrieren.
                                Beim ersten Versuch hatte ich den Gruppenmonitor noch nicht am laufen. Daher davon nur der Output vom ESP. Bei den anderen beiden Versuchen lief der Gruppenmonitor mit.
                                Im Anhang eine ZIP.

                                Hilft dir das?

                                Vielen dank und viele Grüße,
                                Hendrik
                                Angehängte Dateien

                                Kommentar

                                Lädt...
                                X