Forum: Mikrocontroller und Digitale Elektronik ESP32 Programmer - Could not auto-detect Flash size


von Daniel K. (daniel_k80)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,

ich habe mir einen externen Programmer für einen ESP32 gebaut (siehe 
Programmer.png). Dieser Programmer wird über ein Kabel mit meiner 
Platine verbunden 
(https://www.tag-connect.com/wp-content/uploads/bsk-pdf-manager/2019/12/TC2030-IDC-NL-Datasheet-Rev-B.pdf).

Ich wollte den Programmer und das Board mit einem Testprogramm testen 
(vorerst mit der Arduino IDE, weil es schnell geht)
1
void setup() {
2
  Serial.begin(115200);
3
}
4
5
void loop() {
6
  Serial.println("Hello");
7
  delay(1000);
8
}

Leider gibt mir die Arduino-IDE die folgende Meldung aus:
1
Der Sketch verwendet 206956 Bytes (19%) des Programmspeicherplatzes. Das Maximum sind 1048576 Bytes.
2
Globale Variablen verwenden 13500 Bytes (4%) des dynamischen Speichers, 314180 Bytes für lokale Variablen verbleiben. Das Maximum sind 327680 Bytes.
3
esptool.py v3.0-dev
4
Serial port COM14
5
Connecting........_____.....____
6
Chip is ESP32-D0WD-V3 (revision 3)
7
Features: WiFi, BT, Dual Core, 240MHz, VRef calibration in efuse, Coding Scheme None
8
Crystal is 40MHz
9
MAC: a8:03:2a:3e:ba:3c
10
Uploading stub...
11
Running stub...
12
Stub running...
13
Configuring flash size...
14
Warning: Could not auto-detect Flash size (FlashID=0xffffff, SizeID=0xff), defaulting to 4MB
15
Compressed 8192 bytes to 47...
16
17
A fatal error occurred: Timed out waiting for packet content
18
A fatal error occurred: Timed out waiting for packet content

Die Einstellungen lauten:
- COM14 (COM-Port vom Programmer)
- Upload Speed 115200
- Flash Frequency 40 MHz
- Flash Mode QIO

Woran kann dieses Problem liegen / wie kann ich das Problem lösen?

von Michael (Gast)


Lesenswert?

Es sind zu wenig Kerkos an den 3,3V

von Daniel K. (daniel_k80)


Lesenswert?

An welchen 3,3 V meinst du? Vom Board oder vom Programmer?

von Stefan F. (Gast)


Lesenswert?

Daniel K. schrieb:
> Flash Mode QIO

Unterstützt dein Speicher denn diesen Modus? Versuche mal DIO oder noch 
langsamer DOUT.

von Daniel K. (daniel_k80)


Lesenswert?

Stefan ⛄ F. schrieb:
> Daniel K. schrieb:
>> Flash Mode QIO
>
> Unterstützt dein Speicher denn diesen Modus? Versuche mal DIO oder noch
> langsamer DOUT.

Leider kein Unterschied (sowohl DIO oder DOUT)

von Daniel K. (daniel_k80)


Lesenswert?

Ok eine Erkenntnis ist schon mal gekommen...

Der obige Fehler kam von einer Peripherie an IO12 (Rx vom UART). Ohne 
die Peripherie passiert nichts:
1
esptool.py v3.0-dev
2
Serial port COM14
3
Connecting........_____....._____....._____....._____....._____....._____....._____
4
5
A fatal error occurred: Failed to connect to ESP32: Timed out waiting for packet header
6
A fatal error occurred: Failed to connect to ESP32: Timed out waiting for packet header

: Bearbeitet durch User
von John P. (brushlesspower)


Lesenswert?

An EN muss ein Kondensator z.B. 2µ2

von Erwin R. (er-tronik)


Lesenswert?

Also... ignoriere mal einfach diesen ganzen Schwachsinn mit den 
Kondensatoren. Solche Antworten sind hier im Forum normal, wenn was 
nicht klappt und man kennt die Lösung nicht, sind bestimmt die fehlenden 
Kondensatoren schuld. Normalerweise sind in den ESP32-Modulen genug 
Kondensatoren verbaut, so dass man sich darüber sicher keine Gedanken zu 
machen braucht. Und ein 2µ2 Kondensator an die Reset-Leitung anzulöten 
ist ja der größte Schwachsinn, wie soll der Programmieradapter dann noch 
ein sauberes Timing hinbekommen?

Ich habe im letzten Jahr etliche Schaltungen mit ESP32 und ESP32-S2 
aufgebaut. Dabei habe ich häufig meine eigenen Programmierschaltungen 
benutzt und eigentlich nie diese Fehlermeldung gehabt. Was mir auffällt, 
ist die Angabe QIO. In der Regel werden alle ESP32-WROOM-Module mit DIO 
40MHz programmiert. Damit sollte das Flash immer einwandfrei erkannt 
werden, zumal die Verbindung ja sauber aufgebaut wurde und der 
Controller von Programmer erkannt wurde.

Achte darauf, dass du IO12 während des Bootvorganges nicht auf 
High-Signal ziehst. Dann wird der Flash nur noch mit 1,8V betrieben und 
das funktioniert nicht. Ansonsten sieht die Schaltung aber gut aus, der 
ESP32 müsste so zu programmieren gehen.

von Joachim B. (jar)


Lesenswert?

Erwin R. schrieb:
> Also... ignoriere mal einfach diesen ganzen Schwachsinn mit den
> Kondensatoren. Solche Antworten sind hier im Forum normal, wenn was
> nicht klappt und man kennt die Lösung nicht, sind bestimmt die fehlenden
> Kondensatoren schuld.

du scheinst keine Ahnung zu haben
https://randomnerdtutorials.com/solved-failed-to-connect-to-esp32-timed-out-waiting-for-packet-header/

von 5 gekauften ESP32 Boards musste ich 4 Stück mit 10µF am EN 
nachrüsten damit die programmierbar werden!
Ich nahm aber MLCC SMD die besser zwischen EN und Blech gelötet werden 
können

von Daniel K. (daniel_k80)


Lesenswert?

Hallo,

bitte entschuldigt die Wartezeit, aber ich musste ein paar Komponenten 
bestellen um Tests durchzuführen. Ich habe nun einen RC-Filter, 
bestehend aus einem 12k Widerstand und einem 3 µF Kondensator (3x 1 µF 
parallel) am EN-Pin, aber das Problem besteht weiterhin.

von Joachim B. (jar)


Lesenswert?

Daniel K. schrieb:
> 3 µF Kondensator (3x 1 µF
> parallel) am EN-Pin,

!= 10µF

aber egal, mit eigenen Werten wirst du noch viel Spass aber 
möglicherweise kein Erfolg haben

von Daniel K. (daniel_k80)


Lesenswert?

Die 10 µF Kondensatoren kommen erst nächste Woche an. Daher habe ich es 
erst einmal mit Werten um die 2,2 µF getestet (wie beim ESP WROOVER Kit 
https://dl.espressif.com/dl/schematics/ESP-WROVER-KIT_V4_1.pdf)

: Bearbeitet durch User
von Joachim B. (jar)


Lesenswert?

Daniel K. schrieb:
> Daher habe ich es
> erst einmal mit Werten um die 2,2 µF getestet

hätte ja klappen können, ich hatte sofort mit den 10µF Erfolg trotz DC 
Bias.
Vielleicht klappt es ja dann mit 10µF oder du musst weitersuchen.
Ich bin aber immer noch unsicher bezüglich Bootprogramm, weiss nicht wie 
das bei deinen Modulen ist.

Zeige doch mal Bilder von deinen Modulen und von deinem Aufbau, muss das 
eigentlich immer wieder gewünscht werden. Sollten aussagekräftige Bilder 
nicht gleich am Anfang gezeigt werden?

von Michael U. (amiga)


Lesenswert?

Hallo,

am Anfang des Threads kam er ja noch in den Prog-Mode, jetzt nicht mehr, 
das kann aber etwas zufällig sein, Timingprobleme bei DTR/RTS hatte ich 
schon mehr als genug.
Taster an Reset-GND und GPIOß-GND.
Wenn das Programmieren aus der IDE beginnt:
GPIO0-Taster festhalten.
Rest kurz drücken.
Jetzt muß die Programmierung starten, GPIO0 kann dann auch losgelassen 
werden.
Das muß in jedem Fall gehen, dann kann er über Elko usw. für den 
automatischen Start aus der IDE immernoch nachdenken.

Gruß aus Berlin
Michael

von Daniel K. (daniel_k80)


Lesenswert?

Hallo,

die 10 µF Kondensatoren sind angekommen und damit klappt auch alles. 
Danke für die Hilfe.

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
Noch kein Account? Hier anmelden.