ich habe eine Platine mit nur dem ESP32-C3 Chip und wollte den über die integrierte JTAG schnittstelle programmieren. Mit einem CP2102 kann ich mein Board ohne Probleme programmieren.
Was ich bis jetzt herausgefunden habe ist, dass USB mit Adressierung arbeitet und die ID für das Gerät in der Firmenware abgelegt werden muss. Da der ESP noch keine hat, kann ich auch nicht direkt out of the Box mit der JTAG Schnittstelle programmieren. Dachte in meinem naiven Leichtsinn ich kann einfach mit dem CP2102 irgendein programm aufspielen und dann sollte es gehen..ne.
Anscheind muss ich die Fuses für die JTAG Schnittstelle aktivieren. So, gegoogelt und folgende Anleitung gefunden https://www.visualmicro.com/page/ESP32C3-JTAG-Debugging.aspx
hier sagt er, sobald man das tool runtergeladen hat, dass man mit
die Fuses aktiviert. direkt darunter schreibt er, dass sollten die Fuses nicht verfügbar sein, kommt eine Fehlermeldung. Die Fehlermeldung bekomme ich.
Als nächstes schreibt er, wenn das der Fall ist, solle man:
If JTAG_SEL_ENABLE is not present, you will need to set the DIS_USB_JTAG Fuse, which PERMANENTLY disables USB debugging on this board, and cannot be undone.
Jetzt bin ich verwirrt, warum sollte ich die Schnittstelle permanent deaktivieren?
Kann mir jemand auf die Sprünge helfen?
Danke!
Was für ein Board verwendest du ?
Ich experimentiere hier mit dem ESP32-C3 super mini. Habe das Board am PC (WIN10) angeschlossen und hat funktioniert.
Allerdinngs nicht per JTAG.
Ich habe kein Board. Ich habe nur das ESP32-C3 IC und ein USB-Stecker an pin 18 und 19.
Programmieren mit einem CP2102 klappt auch prima. Nur nicht über die JTAG Schnittstelle
Ich habe einiges gefunden, jedoch gehen die meisten entweder auf die ESP-IDF oder eine andere IDE ein. Ich hatte gehofft, das irgendwie über die Arduino-IDE zu machen, dass ich erstmal mit dem Board rumspielen kann, ohne mich erst in eine andere Plattform einzuarbeiten.
Es gibt in der Arduino-IDE den Punkt: USB CDC On Boot: Enabled/Disabled
This class is often used to enable serial communication and can be used to flash the firmware on the ESP32 without the external USB to Serial chip.
Auch wenn ich das aktiviere, funzt es dennoch nicht.
Ich habe wie dort beschrieben, den ESP in den Boot modus versetzt, Haken gesetzt und erstmal leeren Code hochgeladen. Dannach soll ich ohne externen chip und ohne externen USB/Seriell wanlder den ESP programmieren können.
EDIT:
villeicht sollte ich erwähnen, dass sobald ich ein USB-Kabel anschließe, windows direkt sagt, dass Gerät wurde nichtt erkannt.
Dann muss ich leider auch passen.
Die Version 2 ist sowieso noch in der "Entwicklungsphase" - evtl. ist da auch (noch) nicht alles vollständig für den C3 implementiert.
Reset drücken und festhalten.
Boot drücken und festhalten.
Reset loslassen.
Boot loslassen.
Flashen....danach Reset drücken und er läuft. , zumindest bei mir.
Oder besorge dir Den hier, dann kannst du zumindest damit probieren.
So hab ich das auch, nur USB CDC on Boot aktiviert. Hatte auch probiert unten unter JTAG Adapter intern USB oder wie das aus hieß zu aktivieren. Leider ohne Erfolg.
Weil ich hier gerade drüber stolpere. Ich habe vorhin die 2er IDE unter Fedora "installiert". Früher auch schon unter Ubuntu. Das geht im Grunde ganz einfach. Nicht das Software Center etc. verwenden.
Von der Arduino Seite die 2er IDE als App Image runterladen.
Ausführbar machen.
Starten.
Gff. Serial Zugriffsrechte freigeben.
Ich mach das immer genau nach dieser Linux App Image Anleitung .