Hallo. Ich habe einen ESP32-S3 und stehe gerade vor dem Problem das ich an den internen Debugger nicht ran komme bzw ich nicht debuggen kann. 1. Test unter VS Code WINDOWS erkennt den ESP Debugger auf der USB Schnittstelle. Ich kann mein Programm flashen und auf der UART-USB Schnittstelle sehe ich meine Ausgaben. Also das Programm ist drauf, nur wie kann man nun anhalten / starten und Variablen ansehen? 2. Test unter Expresif IDF WINDOWS erkennt den ESP Debugger auf der USB Schnittstelle. Build läuft, aber dann hört es auf. Also wie geht das und was muss ich wo eintragen?
So auch nach weiteren Lesen und Testen bin ich kein Stück weiter. So kompliziert kann das doch gar nicht sein. So was muss doch eigentlich jeder machen/wissen der ernsthaft mit einem esp32-s3 was macht. Nur finde ich die Beschreibung (drücke hier, dann da) nicht. Wäre jemand von euch so nett und teilt sein Wissen.
https://docs.espressif.com/projects/esp-idf/en/latest/esp32s3/api-guides/jtag-debugging/index.html unter Windows brauchst du wahrscheinlich noch die zadig Treiber suite damit du openocd nutzen kannst Das ist aber abhängig von der debug hardware https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-guides/jtag-debugging/configure-ft2232h-jtag.html
Kenne ich und bekomme es nicht hin. VS code als Editor wäre noch besser. Aber da finde ich nichts. Das Programm drauf laden geht aber.
im VSCode fehlt praktisch die Debug Anbindung über gdb an OpenOCD. Relativ einfach ist es PlatformIO zu benutzen, das installiert einen angepassten OpenOCD und hat eine gute Debug Engine. Für das Interface 0 vom esp-prog muss dann der WinUSB Treiber aktiv sein. In der Debug Console bekommt man Ausgaben wenn etwas nicht klappt.
Dirk schrieb: > Ich habe einen ESP32-S3 und stehe gerade vor dem Problem das ich an den > internen Debugger nicht ran komme bzw ich nicht debuggen kann. Was meinst du mit "internen Debugger"?
Der esp32-s3 hat über die USB Schnittstelle einen intern jtag. Man kann aber auch extern einen dran hängen. Das wäre dann mein nächster Versuch gewesen. Wenn da sozusagen die Verbindung zwischen den beiden Debugg Schnittstellen fehlt ist es ja dann kein Wunder warum ich das nicht hinbekomme. PlatformIO werde ich ausprobieren.
Ach tatsächlich ja. Ich dachte es gibt nur eine interne "Debug-unterstützende" UART Bridge. Ich würd mich bei der üblichen Qualität von Espressif aber hüten diesen internen JTAG zu nutzen. Die Erstkunden sind wie immer Alpha Tester. Ansonsten würde ich raten erstmal auf jegliches IDE Gedings zu verzichten und zu versuchen via Kommandozeile einzusteigen. Sprich wirklich händisch GDB starten... Solang das schon nicht geht macht PlatformIO und Co kaum Sinn (außer vielleicht um sich diverse Parameter für die Übergabe abzuschaun) /edit Typo
:
Bearbeitet durch User
Warum sollte man für einen ESP/Arduino einen Debugger brauchen? Serial.println reicht doch vollkommen aus.
Adruino kann ich zumindest mit dem offiziellen loop nicht gebrauchen. Bei mir ist alles Std c. Ob das nun eine USB Bridge ist oder etwas besseres kann ich nicht sagen. Da frag mich mal in ein paar Monaten. Muss noch mal schauen ob mein j-link da funktioniert. So richtig hab ich das noch nicht verstanden wie das ganze funktioniert. Da ist ein STM32 um Klassen einfacher oder die Umgebung ist einfacher zu bedienen. Ich denke inzwischen das vs code und ich nicht kompatibel sind. Warum einen Debugger? Ist das eine ernst gemeinte Frage? Wie kann man ohne ernsthaft Arbeiten?
Dirk schrieb: > Warum einen Debugger? > Ist das eine ernst gemeinte Frage? > Wie kann man ohne ernsthaft Arbeiten? Ja die Frage ist ernst gemeint. Debugger habe ich damals bei der Erstellung von Windows-Programmen eingesetzt. Seit 15J programmiere ich uCs und habe dabei noch nie einen Debugger genutzt. Die spannenden Probleme wie Verhalten bei Signaljitter, Regler-Abstimmung etc kann man kaum mit einem Debugger nachvollziehen. Um das Zusammenspiel von Statemachines zu debuggen sind mmn Traces oft besser. Mit dem Debugger komme ich da nicht weit
Gut Laufzeitabläuft macht man mit Portpins und messen, da hilft kein Debugger. Aber für alles andere ist es das Werkzeug Nummer 1. Wenn Du und wohl auch viele andere mit printf klar kommen warum nicht, nur wirklich effektiv finde ich das nicht. Bsonders wenn mal was nicht so läuft wie gedacht, da kann ich einfach anhalten und Schritt für Schritt den Code ablaufen. Dazu kann ich mir die Variablen ansehen und so den Fehler einkreisen. Mit printf brauche ich da erheblich länger wenn ich es überhaupt damit finde.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.