ESP8266 bootet nicht

#5108864
Lesenswert?

Nochmal langsam, das ist recht verwirrend deine Beschreibungen, gehe mal 
von low und 0 etc.. weg und benutze GND und VCC:

Immer:
1
CH_PD/EN -> Pull-Up   (10k) an VCC


Zum Betrieb:
1
GPIO0  -> Pull-Up   (10k) an VCC 
2
GPIO2  -> Pull-Up   (10k) an VCC
3
GPIO15 -> Pull-Down (10k) an GND

Zum seriellen Laden:
1
GPIO0  -> Pull-Down (10k) an GND 
2
GPIO2  -> Pull-Up   (10k) an VCC
3
GPIO15 -> Pull-Down (10k) an GND

GPIO15 muss eigentlich immer auf GND gezogen sein, es sei denn du 
bootest von SD-Card.

Was hast du für einen "IR-Kopf" an RX/TX? Wie ist der Verschaltet? Da 
Hilft auch mal ganz deutlich ein Schaltplan!
#5109037
Lesenswert?

C3PO schrieb:
> Der TX pin darf beim start nicht LOW sein. Wenn er es ist bootet der ESP
> im "Test Mode".
>
> Man muss daher neben gpio 0,2 und 15 auch auf den Logikpegel am TX pin
> (gpio 1) beim booten achten.

Danke für die Infos, ist mir tatsächlich auch noch nie aufgefallen. Gilt 
das für alle ESP8266? Auch für die ESP-01 Modelle (TX == GPIO1)?

Wenn dem wirklich so wäre, dann müsste ich tatsächlich etwas in meiner 
Software-Lib ändern, da ich den ESP-01 mitunder über einen µC 
programmiere, der diesen Resetet und in den Serial Mode setzt - und in 
dem Zustand des Resets der RX/TX Pin aus Richtung µC undefiniert ist.
Gast #5109122
Lesenswert?

Also...

Beschaltung:
VCC/GND an LM1117 mit Puffer-C
GPIO15 <-> GND
EN <-> VCC

GPIO0 ist NICHT auf VCC, da er dann GARNICHT bootet.

Geflash ist esp-link.
Die Schaltung an Rx/Tx ist der IR-Schreib-/Lesekopf von 
wiki.volkszaehler.org:

https://wiki.volkszaehler.org/_media/hardware/controllers/ir_schreib_lesekopf_ttl_neu_v1_stromlaufplan.png?w=600&tok=937c8e

Wie gesagt, hinge da am Tx des ESP nur der Eingang des Schmitt-Triggers.

Wenn ich den ESP boote und dann Tx an den Schmittt. hänge funktioniert 
alles.
Mit von haus aus angeschlossenem Tx kann ich aber nicht booten.
In den Eingang des Schmittt. fließen bei 3,3V ~320uA falls das relevant 
ist.
Gast #5109126
Lesenswert?

> ~320uA falls das relevant ist.

Ich denke, das ist relevant. Die internen Pull-Up und Pull-Down 
Widerstände des ESP Chips sind recht hochohmig. Packe einfach einen 
externen 2,2k Ohm Pull-Up Widerstand dazu, dann sollte es klappen.
#5109131
Lesenswert?

ESPnoob schrieb:
> Beschaltung:
> VCC/GND an LM1117 mit Puffer-C
> GPIO15 <-> GND
> EN <-> VCC
>
> GPIO0 ist NICHT auf VCC, da er dann GARNICHT bootet.

GPIO2... Was ist mit GPIO2???

Rene K. schrieb:
> Zum Betrieb:
> GPIO0  -> Pull-Up   (10k) an VCC
> GPIO2  -> Pull-Up   (10k) an VCC
> GPIO15 -> Pull-Down (10k) an GND



> GPIO0 ist NICHT auf VCC, da er dann GARNICHT bootet.

Und du bist dir sicher das er überhaupt arbeitet und sein Programm aus 
dem Flash zieht und nicht einfach dann bloß in den Serial Mode geht?!
Gast #5109163
Lesenswert?

GPIO2 muss laut db high oder floating sein, hab auf floating vertraut 
was prinzipiell funktioniert.
Kann die Rx/Tx Beschaltung die Notwendigkeit der GPIO2-Beschaltung 
verändern?

Nein, da bin ich nicht sicher, muss ich überprüfen.


2k2 als pull-up an Tx meinst du?
#5109175
Lesenswert?

Das ist der "Boot-Code" - wenn er, wie du sagst, bei GPIO0 auf VCC nicht 
anspringt. Dann geht er halt nicht in den normalen Modus - sprich dein 
Programm was du darauf geflasht hast läuft nicht. Und er geht in den 
Serial Mode.


1
                                  | GPIO 0 | GPIO 2 | GPIO 15
2
----------------------------------|--------|--------|---------
3
Flash Startup (Normal)            |   1    |   1    |   0
4
UART Download Mode (Programming)  |   0    |   1    |   0
5
SD-Card Boot                      |   0    |   0    |   1
Gast #5109178
Lesenswert?

Nach den aktuellen Erkenntnissen sollten man die Tabelle ergänzen:
1
                                             (TxD)
2
                                  | GPIO 0 | GPIO 1 | GPIO 2 | GPIO 15
3
----------------------------------|--------|--------|--------|---------
4
Flash Startup (Normal)            |   1f   |   1f   |   1f   |   0
5
UART Download Mode (Programming)  |   0    |   1f   |   1f   |   0
6
SD-Card Boot                      |   0    |   1f   |   0    |   1

f bedeutet: "oder floating"
#5109201
Lesenswert?

Stefan, so sehr ich deine Arbeit schätze und immer mal wieder bei dir 
stöbern gehe :-D Aber ich hab gerade mal, da ich hier nur mit ESP-01 
Modulen arbeite, eines "floaten" lassen. Es ging nicht - es tat sich 
rein garnichts. :-)

Es mag ja sein das es eventuell funktioniert. Aber auf einen floateten 
Pin als Zustandsgeber kann man sich einfach nicht verlassen - weiß man 
was man sich da einfängt?! Nein, lieber einen festen definierten Zustand 
herstellen. Bei ungenutzten µC Pins - okay - die lasse ich meistens in 
meinen Layouts (soweit nicht anders im DB angegeben ist) auch offen, 
aber ich würde nie einen Zustandspin, sei es eine I²C Adresse oder eben 
ein BootPin, offen lassen.
Gast #5109982
Lesenswert?

> Aber auf einen floateten  Pin als Zustandsgeber
> kann man sich einfach nicht verlassen

Absolut richtig. Sobald an einem Pin auch nur 1cm Draht hängen, sollte 
man ihn nich tmehr floaten lassen. Der ESP8266 hat zwar intern Pull-Up 
Widerstände aber die sind arg hochohmig.

> Wie kann man denn bitte einen 3V3 LDO schrotten?

Auf Steckbrett passiert es ganz schnell, daß man ihn verpolt.

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