ESP-S3 wie debuggen?

Gast #7086074
Lesenswert?

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?
Gast #7089655
Lesenswert?

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.
#7089778
Lesenswert?

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.
Gast #7089841
Lesenswert?

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.
#7089862
Lesenswert?

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
Gast #7090030
Lesenswert?

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?
Gast #7090069
Lesenswert?

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
Gast #7090193
Lesenswert?

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.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren