[OSX] ESP8266- Hochladen mit Arduino IDE Schlägt fehl

Gast #5221992
Lesenswert?

Hallo,

Letzte Woche kam die Lieferung mit 6 ESP8266 (12E/F) Modulen.

Der Adapter liegt schon mehrere Wochen auf dem Schreibtisch ;-) 
(https://www.amazon.de/gp/product/B00I9F710U/ref=oh_aui_detailpage_o02_s00?ie=UTF8&psc=1)

Ich verwende OSX und die aktuellste Version der Arduino IDE.

Die Treiber für den CP2102 habe ich von dieser Seite: 
https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers

Für die „Importierung“ der Module in die IDE habe ich das übliche Paket 
(http://arduino.esp8266.com/stable/package_esp8266com_index.json) 
verwendet.


Das Modul habe ich auf dieses Board verlötet: 
https://www.ebay.de/itm/281931093308, die 0 Ohm Brücke ausgelötet und 
einen Spannungswandler auf der Rückseite verlötet.

Verdrahtet ist es wie folgt:

TX Programmer —> RX ESP
RX Programmer —> TX ESP

ESP EN/CH_PD auf 3,3V
ESP +3,3V auf 5V (wegen Spannungswandler)

ESP GPIO 0 an GND
ESP GPIO 15 an GND
ESP GND an GND


Meine Einstellungen in der Arduino IDE sind auf dem angehängten Bild zu 
sehen.

Die Fehlermeldung lautet:

warning: espcomm_sync failed
error: espcomm_open failed
error: espcomm_upload_mem failed
error: espcomm_upload_mem failed


Ich hoffe sehr dass ich hier eine VERSTÄNDLICHE Lösung finde ;-),

Danke!
Angehängte Dateien:
Gast #5222459
Lesenswert?

Stefan U. schrieb:
> Zuerst mal solltest du deinen USB-UART Adapter mit einem
> Terminalprogramm testen. Verbinde Tx mit Rx, so dass deine Eingaben als
> echo zurück kommen.
>
> Als nächstes solltest du mal klären, wie der Bootloader des ESP8266
> aktiviert wird. Alle nötigen Infos dazu findest du hier:
> http://stefanfrings.de/esp8266/index.html

Kannst du mal genauer Erläutern wie ich das Testen soll? Also verbinden 
ist klar aber wie soll ich mir das mit Terminalprogramm anzeigen lassen?

LG
#5222471
Lesenswert?

Na einfach mal ein paar Zeichen senden und empfangen, loopback. Welches 
Terminalprogramm verwendest du? Im osx terminal geht das nicht so 
wirklich, ja auch da kann man bytes nach /dev/ttyUSB oder wie auch immer 
das heißt schreiben, aber du brauchst ein terminal für UART.
#5222474
Lesenswert?

Max schrieb:
> Also verbinden
> ist klar aber wie soll ich mir das mit Terminalprogramm anzeigen lassen?

Nachdem Du RXD und TXD an dem Adapter verbunden hast, gibst Du im 
Terminalprogramm einfach wilde Buchstaben ein. Wenn das Echo (und damit 
der Adapter) funktioniert, siehst Du Deine gerade eingegeben Buchstaben 
sofort auf dem Terminalfenster. Fall der Adapter nicht funktioniert oder 
eben die Brücke zwischen RXD und TXD getrennt wird, bleibt das Fenster 
leer.

MfG Paul
#5222485
Lesenswert?

Max schrieb:
> Stefan U. schrieb:
>> Zuerst mal solltest du deinen USB-UART Adapter mit einem
>> Terminalprogramm testen. Verbinde Tx mit Rx, so dass deine Eingaben als
>> echo zurück kommen.
>>
>> Als nächstes solltest du mal klären, wie der Bootloader des ESP8266
>> aktiviert wird. Alle nötigen Infos dazu findest du hier:
>> http://stefanfrings.de/esp8266/index.html
>
> Kannst du mal genauer Erläutern wie ich das Testen soll? Also verbinden
> ist klar aber wie soll ich mir das mit Terminalprogramm anzeigen lassen?
>
In der Arduino IDE hast du einen Seriellen Monitor, der tuts auch.

Sascha
Gast #5222778
Lesenswert?

Sascha W. schrieb
> In der Arduino IDE hast du einen Seriellen Monitor, der tuts auch.
>
> Sascha

Genau das habe ich mir auch gedacht, war mir aber nicht sicher...

Also RXD und TXT miteinander verbinden und dann irgendetwas über den 
Seriellen Monitor senden?
Gast #5222840
Lesenswert?

Max schrieb:
> Also RXD und TXT miteinander verbinden und dann irgendetwas über den
> Seriellen Monitor senden?

Ja.Gib ein paar Buchstaben im oberen Eingabefeld ein und druecke "Send".

Das was du eingegeben hast sollte dann auch als Antwort im unteren 
Monitorfeld zu sehen sein.
====================================
Stelle sicher,dass nur eine Arduinoanwendung offen ist !
Dies gilt uebrigens auch wenn du Code uploadest.

Sollte der Test fehlschlagen vertausche RxD mit TxD:
Bei meinem CP2102-Modul (entspricht nicht dem deinigen) ist die 
Beschriftung falsch.....
Gast #5222849
Lesenswert?

Toxic schrieb:
> Sollte der Test fehlschlagen vertausche RxD mit TxD:
> Bei meinem CP2102-Modul (entspricht nicht dem deinigen) ist die
> Beschriftung falsch.....

Copy/Paste - Mist:
Sollte der Test funktionieren und damit das Modul ok sein,dann 
vertausche testweise die RxD / TxD-Verbindungen die zum ESP-Modul 
fuehren.
Gast #5222903
Lesenswert?

> Nim einen FTDI, der CP2102 funktioniert nicht wirklich unter macOS. Den
> schrott hatte ich auch schon.

Da der CP2102 in anderen Systemumgebungen klaglos tut, fragt
sich was wohl der Schrott ist.

Mein Mitleid hält sich da in Grenzen.
Beitrag #5222936 wurde von einem Moderator gelöscht.
Beitrag #5222944 wurde von einem Moderator gelöscht.
Beitrag #5223003 wurde von einem Moderator gelöscht.
Beitrag #5223007 wurde von einem Moderator gelöscht.
Gast #5223058
Lesenswert?

Toxic schrieb:
> Max schrieb:
>> Also RXD und TXT miteinander verbinden und dann irgendetwas über den
>> Seriellen Monitor senden?
>
> Ja.Gib ein paar Buchstaben im oberen Eingabefeld ein und druecke "Send".
>
> Das was du eingegeben hast sollte dann auch als Antwort im unteren
> Monitorfeld zu sehen sein.
> ====================================
> Stelle sicher,dass nur eine Arduinoanwendung offen ist !
> Dies gilt uebrigens auch wenn du Code uploadest.
>
> Sollte der Test fehlschlagen vertausche RxD mit TxD:
> Bei meinem CP2102-Modul (entspricht nicht dem deinigen) ist die
> Beschriftung falsch.....


Also, gerade getestet die Zeichen die eingegeben wurden erscheinen im 
unteren Monitorfeld...
Gast #5223086
Lesenswert?

Stefan U. schrieb:
> Zuerst mal solltest du deinen USB-UART Adapter mit einem
> Terminalprogramm testen. Verbinde Tx mit Rx, so dass deine Eingaben als
> echo zurück kommen.
>
> Als nächstes solltest du mal klären, wie der Bootloader des ESP8266
> aktiviert wird. Alle nötigen Infos dazu findest du hier:
> http://stefanfrings.de/esp8266/index.html

Wenn ich es nach der Zeichnung auf der Stefanfrings seite mache,ist der 
kondensator zwischen VCC und GND unbedingt notwendig? habe gerade keine 
Kondensatoren da da ich neulich jemandem ausgeholfen habe, neue sind 
aber auf dem weg aus China...
Gast #5223138
Lesenswert?

Lies was ich geschrieben habe. Der Kondensator verbessert die 
Stabilität, indem er den Spannungsregler bei den extremen Stromspitzen 
unterstützt.

Beim Flashen wird er sicher nicht nötig sein, aber danach ist er 
zumindest empfehlenswert.
Gast #5223356
Lesenswert?

Hi,

also ich habe jetzt mal die Schaltung von stefanfrings.de nachgebaut:

(ESP) RST --> 3,3 V
(ESP) CH_PD --> 3,3 V
(ESP) VCC --> 3,3 V

(ESP) GND --> GND
(ESP) GPIO 15 --> 2,2k --> GND

(ESP) TxD --> 1k --> RxD Programmer
(ESP) RxD --> 1k --> TxD Programmer

Zusätzlich habe ich GPIO0 mit GND verbunden. Leider bekomme ich noch 
immer die Fehlermeldung vom Anfang:

Archiving built core (caching) in: 
/var/folders/zj/9t2dfhl17f7cs0__nj42w8jh0000gp/T/arduino_cache_649153/co 
re/core_esp8266_esp8266_generic_CpuFrequency_80,FlashFreq_40,FlashMode_q 
io,UploadSpeed_115200,FlashSize_512K0,ResetMethod_nodemcu,Debug_Disabled 
,DebugLevel_None_____cf231c735c9781572af6f338eaa24e8c.a
Der Sketch verwendet 221935 Bytes (44%) des Programmspeicherplatzes. Das 
Maximum sind 499696 Bytes.
Globale Variablen verwenden 31500 Bytes (38%) des dynamischen Speichers, 
50420 Bytes für lokale Variablen verbleiben. Das Maximum sind 81920 
Bytes.
warning: espcomm_sync failed
error: espcomm_open failed
error: espcomm_upload_mem failed
error: espcomm_upload_mem failed

Jemand eine Idee?
Gast #5223407
Lesenswert?

Du kannst auch mal Folgendes machen um sicher zu sein das der CP2102 
läuft:
Stecke einen Kurzschlußstecker zwischen TX und RX, wenn du dann im 
Teminalprogramm Zeichen sendest müssten die wider zurückkommen, dann 
weist du ob die Hardware und der Treiber gehen.
Gast #5223410
Lesenswert?

Da

Sven schrieb:
> Du kannst auch mal Folgendes machen um sicher zu sein das der
> CP2102
> läuft:
> Stecke einen Kurzschlußstecker zwischen TX und RX, wenn du dann im
> Teminalprogramm Zeichen sendest müssten die wider zurückkommen, dann
> weist du ob die Hardware und der Treiber gehen.

Das wurde schon getestet! Zeichen kamen zurück!
Gast #5223427
Lesenswert?

> Bemerke: Du hast einen 4MByte ESP, keinen 512kByte.

Das ist egal, solange das Programm rein passt.

Hast du die GND Leitung vom USB-UART Kabel (das heisst nicht 
Programmer!) angeschlossen?

Funktioniert die USB-UART Kommunikation überhaupt? Hast du das mal mit 
einem Terminalprogramm und der vorinstallierten Firmware probiert (die 
ja jetzt noch drauf sein müsste)?

Welche Spannung misst du am TxD Ausgang des USB-UART Kabels, wenn keine 
Daten übertragen werden?
Gast #5223460
Lesenswert?

Stefan U. schrieb:
>> Bemerke: Du hast einen 4MByte ESP, keinen 512kByte.
>
> Das ist egal, solange das Programm rein passt.
>
> Hast du die GND Leitung vom USB-UART Kabel (das heisst nicht
> Programmer!) angeschlossen?

Du meinst doch damit den Anschluss am usb wandler oder? ja, das habe 
ich.

> Funktioniert die USB-UART Kommunikation überhaupt? Hast du das mal mit
> einem Terminalprogramm und der vorinstallierten Firmware probiert (die
> ja jetzt noch drauf sein müsste)?
ja, funktioniert, siehe weiter oben. Habe RX und TX miteinander 
verbunden und über Terminalprogramm gesendet. Ausgabe kam zurück --> 
Funktioniert also

> Welche Spannung misst du am TxD Ausgang des USB-UART Kabels, wenn keine
> Daten übertragen werden?

3,38 V
Gast #5223483
Lesenswert?

Also GND ist angeschlossen und die Signalpegel passen auch.

Mit meiner Frage, ob die Kommunikation geht meine ich, ob die 
Kommunikation mit dem ESP Chip geht. Da ist ja normalerweise die 
AT-Firmware schon drauf. Wenn du da mal mit 115200 Baud ein "AT" gefolgt 
von einem Zeilenumbruch "\r" bzw. CR sendest, müsste das Modul mit "OK" 
antworten.

Und wenn du dem Modul einen Reset-Impuls gibst, müsste im 
Terminalprogramm ein bisschen Kauderwelsh erscheinen, weil der Chip 
seine ersten Boot-Meldungen mit irgendeiner ganz seltsamen Baudrate 
sendet.
#5223570
Lesenswert?

Max schrieb:
> also ich habe jetzt mal die Schaltung von stefanfrings.de nachgebaut:
>
> (ESP) RST --> 3,3 V
> (ESP) CH_PD --> 3,3 V
> (ESP) VCC --> 3,3 V
>
> (ESP) GND --> GND
> (ESP) GPIO 15 --> 2,2k --> GND
>
> (ESP) TxD --> 1k --> RxD Programmer
> (ESP) RxD --> 1k --> TxD Programmer
>
> Zusätzlich habe ich GPIO0 mit GND verbunden. Leider bekomme ich noch
> immer die Fehlermeldung vom Anfang:

Wenn ich das richtig sehe, ist das die Schaltung, die auf Stefans Seite 
als " Minimal-Beschaltung zur Nutzung der AT-Firmware" bezeichnet wird.

Für die Nutzung der AT-Firmware ist die vermutlich auch völlig 
ausreichend, aber imho nicht dann, wenn man das Modul neu flashen will.

Das konkrete Problem, das ich sehe/vermute, ist schon alleine die 
fehlende Möglichkeit den ESP zu resetten, wenn sowohl RST als auch CH_PD 
direkt mit 3.3V verbunden sind. Um einen ESP zu flashen, muss er 
resettet werden, und das ist so imho schlicht nicht möglich.

Mein Tipp: Kauf Dir einen gescheiten USB-UART-Wandler mit den nötigen 
oder zumindest höchst sinnvollen DTR/RTS-Leitungen.
#5223589
Lesenswert?

Stefan U. schrieb:
>> Um einen ESP zu flashen, muss er
>> resettet werden, und das ist so imho schlicht nicht möglich.
>
> Doch geht so: Netzteil einschalten während GPIO0 auf Low ist.

Okay, das ist natürlich auch eine Möglichkeit, wenn auch imho eine 
unschöne.

Ich würde jedenfalls die offizielle Schaltung des Arduino für 
ESP8266-Projekts empfehlen:
https://raw.githubusercontent.com/esp8266/Arduino/master/doc/ESP_to_serial.png
Gast #5223759
Lesenswert?

Joachim S. schrieb:
> Max schrieb:
> also ich habe jetzt mal die Schaltung von stefanfrings.de nachgebaut:
> (ESP) RST --> 3,3 V
> (ESP) CH_PD --> 3,3 V
> (ESP) VCC --> 3,3 V
> (ESP) GND --> GND
> (ESP) GPIO 15 --> 2,2k --> GND
> (ESP) TxD --> 1k --> RxD Programmer
> (ESP) RxD --> 1k --> TxD Programmer
> Zusätzlich habe ich GPIO0 mit GND verbunden. Leider bekomme ich noch
> immer die Fehlermeldung vom Anfang:
>
> Wenn ich das richtig sehe, ist das die Schaltung, die auf Stefans Seite
> als " Minimal-Beschaltung zur Nutzung der AT-Firmware" bezeichnet wird.
>
> Für die Nutzung der AT-Firmware ist die vermutlich auch völlig
> ausreichend, aber imho nicht dann, wenn man das Modul neu flashen will.
>
> Das konkrete Problem, das ich sehe/vermute, ist schon alleine die
> fehlende Möglichkeit den ESP zu resetten, wenn sowohl RST als auch CH_PD
> direkt mit 3.3V verbunden sind. Um einen ESP zu flashen, muss er
> resettet werden, und das ist so imho schlicht nicht möglich.
>
> Mein Tipp: Kauf Dir einen gescheiten USB-UART-Wandler mit den nötigen
> oder zumindest höchst sinnvollen DTR/RTS-Leitungen.

Schade, umsonst ausgegeben das Geld. Dabei stand da geeignet für OSX und 
in den Fragen wurde einem Kunden von einem anderen beantwortet dass er 
mit dem ESP8266 funktioniert...

Was ist deine Empfehlung für einen Vernünftigen wandler? (Mit OS X 
kompatibel)
#5223816
Lesenswert?

Max schrieb:
> Schade, umsonst ausgegeben das Geld. Dabei stand da geeignet für OSX und
> in den Fragen wurde einem Kunden von einem anderen beantwortet dass er
> mit dem ESP8266 funktioniert...
>
> Was ist deine Empfehlung für einen Vernünftigen wandler? (Mit OS X
> kompatibel)

Mein persönlicher Favorit ist dieses Modell:
https://www.amazon.de/AZDelivery-FTDI-Adapter-FT232RL-Serial/dp/B01N9RZK6I/

Aus folgenden Gründen:
- Wirklich absolut alle Signale herausgeführt
- Per Jumper zwischen 3.3V und 5V umschaltbar
- FTDI-Chip, der unter jedem OS problemlos funktionieren sollte
- Kein direkt auf's Board integrierter USB-Stecker, sondern eine 
USB-Buchse (Wandler muss nicht direkt im Computer stecken, sondern man 
kann den Platz frei wählen - Nachteil: man braucht ein USB-Mini-Kabel)

Grundsätzlich sollte das Flashen allerdings mit absolut jedem 
USB-UART-Wandler funktionieren, der mit Deinem OS kompatibel ist. Das 
Problem ist nur: Zum Flashen bzw. zum Normalbetrieb muss man den Zustand 
des GPIO0-Pins und des Reset (oder CH_PD)-Pins verändern.
Normalerweise macht das die Software zum Flashen des ESP8266 
automatisch, über die RTS und DTR-Signalleitungen. Das ist einfach 
praktisch, daher macht es für den ESP8266 Sinn, gleich einen Wandler zu 
haben, der beide Signale herausführt.
Wenn man wie Du einen Wandler hat, bei dem das nicht der Fall ist, bei 
dem vielmehr nur RX/TX herausgeführt ist, dann ist nicht alles verloren 
- dann muss man das Umschalten dieser beiden Pins aber selbst 
übernehmen, üblicherweise über zwei Taster:
Sowohl GPIO0 als auch Reset sollten über Pullup-Widerstände mit VCC 
verbunden sein, sowie über jeweils einen Taster mit GND. Um den ESP zu 
flashen, muss man die beiden Taster dann glaube ich irgendwie in der 
richtigen Reihenfolge etc. drücken - genauer weiss ich es leider nicht, 
weil ich stattdessen halt einen USB-UART-Wandler mit RTS/DTR-Leitungen 
benutze, und mir das Tastengedrücke daher sparen kann.

Also: Besorg Dir auf Dauer einen USB-UART-Wandler mit herausgeführten 
RTS/DTR-Leitungen - und bis der geliefert ist, solltest Du auch mit 
Pullups und Taster an GPIO0 und nRESET irgendwie zum Erfolg kommen.
Gast #5223834
Lesenswert?

Joachim S. schrieb:
> Um den ESP zu
> flashen, muss man die beiden Taster dann glaube ich irgendwie in der
> richtigen Reihenfolge etc. drücken - genauer weiss ich es leider nicht,

Aber ich!


Damit fängt es an:(DTR und RTS ersetzen)
Arduino F. schrieb:
> Ersetze die Anschlüsse durch Taster gegen GND.
> Nenne den einen Reset, und den anderen FLash

Und so gehts weiter:
1. USB in den PC stecken
2. Reset drücken.
3. Flash drücken
4. Reset los lassen
5. Flash los lassen
Der ESP ist jetzt bereit für den Upload.

Den Resetknopf kann man auch weglassen, dann muss man allerdings den 
PowerOnReset nutzen.
Also:
1. Flash Taste drücken
2. In USB in den PC stecken
3. Taste los lassen
Der ESP ist jetzt bereit für den Upload.
Gast #5224339
Lesenswert?

> Was ist deine Empfehlung für einen Vernünftigen Wandler?

Dein USB-UART Adapter ist mit sehr hoher Wahrscheinlichkeit in Ordnung.

>> Doch geht so: Netzteil einschalten während GPIO0 auf Low ist.
> Wie meinst du das?

Du sollst den GPIO0 Pin auf Low halten und dann die Stromversorgung 
einschalten. Normalerweise würde man GPIO0 auf Low halten und dann den 
Reset Taster drücken, aber den hast du ja eingespart.

Der entscheidende Punkt ist, dass der ESP Chip die Konfigurations-Pins 
beim Start einliest. Lies nochmal meine Anleitung: 
http://stefanfrings.de/esp8266/index.html#fwupdate
Gast #5224955
Lesenswert?

Der von Joachim S. empfohlene Adapter wurde soeben bestellt und kommt 
voraussichtlich am Mittwoch.

Anschluss dann nach dem Github Link? Und bei diesem Adpater immer noch 
eine externe Spannungsversorgung verwenden oder ist eine "Onboard" 
vorhanden?
#5225162
Lesenswert?

Max schrieb:
> Der von Joachim S. empfohlene Adapter wurde soeben bestellt und kommt
> voraussichtlich am Mittwoch.
>
> Anschluss dann nach dem Github Link? Und bei diesem Adpater immer noch
> eine externe Spannungsversorgung verwenden oder ist eine "Onboard"
> vorhanden?

Wie Arduino Fanboy ja schon gesagt hat: Vorhanden, aber schlicht zu 
schwach.

Ansonsten:
Den 100nF-Kondensator aus dem Github-Link habe ich persönlich mir 
bislang immer gespart - direkt auf dem ESP-12-Modul sitzt laut 
Schaltplan eh ein 100nF-Kondensator. Stattdessen macht es (wie ebenfalls 
schon von Arduino Fanboy erwähnt) imho mehr Sinn, an der Stelle einen 
ElKo mit mindestens 100µF (gerne auch mehr) zu platzieren.

Ansonsten würde ich mich erst einmal 1:1 an den Github-Schaltplan halten 
- auf den einen oder anderen Pullup-Widerstand aus dem Schaltplan könnte 
man rein theoretisch möglicherweise verzichten, weil der ESP schwache 
interne Pullups hat - aber um auf Nummer sicher zu gehen und das Ding 
erst einmal sicher zum Laufen zu bekommen, würde ich mich da erst einmal 
1:1 an den Schaltplan halten, um jegliche potenziellen Fehlerquellen 
auszuschliessen.
Gast #5225378
Lesenswert?

Stefan U. schrieb:
> Du sollst den GPIO0 Pin auf Low halten und dann die Stromversorgung
> einschalten. Normalerweise würde man GPIO0 auf Low halten und dann den
> Reset Taster drücken, aber den hast du ja eingespart.


Und weil man dies so machen muss (weil die ESP-Programmierer es in ihrem 
Code so vorgegeben haben) und auf die Dauer beim Testen extrem  laestig 
ist (vor allen Dingen wenn man eine Katze auf dem Schoss und damit nur 
eine Hand zur Verfuegung hat),habe ich diese Prozedur mittels eines 
alten 8-beinigen Pics per Software simuliert.Ich benoetige somit nur 
noch einen Taster ....Luxus pur :-)
Dabei dient ein GPIO des Pics um das Reset-Signal zu erzeugen und 
weiterer um den GPIO0 des ESP8266 auf High oder Low zu legen.
Der Code ist dermassen simpel, dass ich es nicht nicht wage ihn hier 
Online zu stellen.......

Also @Max
Du hast 3 Moeglichkeiten:
1.GPIO0 auf GND=Masse legen und dann erst einschalten.Nach den ersten 
Codezeilen stellt ESP-uC fest,dass GPIO0 Low ist und verzeigt sofort ins 
Flashmenu.Sowie dies geschehen ist (ich nehme an nach 1ms...)kann man 
den GPIO0-Taster auch schon wieder loslassen.Er interessiert von da an 
nicht mehr und kannst den Daumen/Finger entlasten

2.GPIO0 auf GND=Masse legen und den Reset-Taster kurz betaetigen - der 
restliche Ablauf wie bei [1.]

3.Eine PIC oder AVR - Loesung a la Toxic ;-)
Angehängte Dateien:
Gast #5225572
Lesenswert?

Arduino F. schrieb:
> Offensichtlich will er keine Taster anbauen.....
> Oder gar nutzen.
> Denn dann würde es schon lange funktionieren.
>
> Perfekt im Ausblenden, nehme ich mal an.
> Auch das bedarf jahrelanger Übung.

;-).

Ich hatte die Lösung mit den Tastern ja sogar probiert ;-).

Aber mit dem anderen müsste es auf Dauer besser sein...
Gast #5227637
Lesenswert?

Hi Zusammen,

der neue Adapter wurde heute geliefert...

Ich habe gerade fast alles "gesteckt", so wie auf dem GitHub Link:
einzige Ausnahme, der empfohlene Adapter hat keine RST Schnittstelle, 
dafür aber einen CTS Pin (und einen DTR), welcher im Github Link aber 
auch nicht zu sehen ist :/

Die neuen Treiber installiert, Chip wird von OSX erkannt.
Das Flashen schlägt leider fehl, Fehlermeldung:

Build-Optionen wurden verändert, alles wird neu kompiliert
Archiving built core (caching) in: 
/var/folders/zj/9t2dfhl17f7cs0__nj42w8jh0000gp/T/arduino_cache_871631/co 
re/core_esp8266_esp8266_generic_CpuFrequency_80,FlashFreq_40,FlashMode_d 
io,UploadSpeed_115200,FlashSize_4M3M,ResetMethod_ck,Debug_Disabled,Debug 
Level_None_____cf231c735c9781572af6f338eaa24e8c.a
Der Sketch verwendet 221935 Bytes (21%) des Programmspeicherplatzes. Das 
Maximum sind 1044464 Bytes.
Globale Variablen verwenden 31500 Bytes (38%) des dynamischen Speichers, 
50420 Bytes für lokale Variablen verbleiben. Das Maximum sind 81920 
Bytes.
Beim Hochladen des Sketches ist ein Fehler aufgetreten


Hoffe sehr dass wir das Flashen ans Laufen kriegen ;-)
Gast #5227657
Lesenswert?

Bernhard S. schrieb:
> schalte mal in den Voreinstellungen "Ausführliche Ausgabe während
> [x]
> Hochladen" ein.

Archiving built core (caching) in: 
/var/folders/zj/9t2dfhl17f7cs0__nj42w8jh0000gp/T/arduino_cache_871631/co 
re/core_esp8266_esp8266_generic_CpuFrequency_80,FlashFreq_40,FlashMode_d 
io,UploadSpeed_115200,FlashSize_4M3M,ResetMethod_ck,Debug_Disabled,Debug 
Level_None_____cf231c735c9781572af6f338eaa24e8c.a
Der Sketch verwendet 221935 Bytes (21%) des Programmspeicherplatzes. Das 
Maximum sind 1044464 Bytes.
Globale Variablen verwenden 31500 Bytes (38%) des dynamischen Speichers, 
50420 Bytes für lokale Variablen verbleiben. Das Maximum sind 81920 
Bytes.
/Users/Max/Library/Arduino15/packages/esp8266/tools/esptool/0.4.9/esptoo 
l  -vv -cd ck -cb 115200 -cp /dev/cu.usbserial-A50285BI -ca 0x00000 -cf 
/var/folders/zj/9t2dfhl17f7cs0__nj42w8jh0000gp/T/arduino_build_985640/sk 
etch_nov29a.ino.bin
Beim Hochladen des Sketches ist ein Fehler aufgetreten
#5227661
Lesenswert?

Max schrieb:
> der neue Adapter wurde heute geliefert...
>
> Ich habe gerade fast alles "gesteckt", so wie auf dem GitHub Link:
> einzige Ausnahme, der empfohlene Adapter hat keine RST Schnittstelle,
> dafür aber einen CTS Pin (und einen DTR), welcher im Github Link aber
> auch nicht zu sehen ist :/

Das Signal auf dem Adapter heisst nicht "RST", sondern "RTS" - und 
befindet sich leider auf einer der Seiten, wo zwar Löcher im 2,54mm-Mass 
bereits vorhanden, aber ab Werk leider noch keine Pin-Leisten angelötet 
sind.
Sorry, hatte ich leider nicht dran gedacht. :-(
Gast #5227680
Lesenswert?

Gerade Pin angelötet ;-).

Leider klappt das flashen trotzdem nicht ://

Hier die Fehlermeldung:

Build-Optionen wurden verändert, alles wird neu kompiliert
Archiving built core (caching) in: 
/var/folders/zj/9t2dfhl17f7cs0__nj42w8jh0000gp/T/arduino_cache_871631/co 
re/core_esp8266_esp8266_generic_CpuFrequency_80,FlashFreq_40,FlashMode_d 
io,UploadSpeed_115200,FlashSize_512K0,ResetMethod_ck,Debug_Disabled,Debu 
gLevel_None_____cf231c735c9781572af6f338eaa24e8c.a
Der Sketch verwendet 221935 Bytes (44%) des Programmspeicherplatzes. Das 
Maximum sind 499696 Bytes.
Globale Variablen verwenden 31500 Bytes (38%) des dynamischen Speichers, 
50420 Bytes für lokale Variablen verbleiben. Das Maximum sind 81920 
Bytes.
/Users/Max/Library/Arduino15/packages/esp8266/tools/esptool/0.4.9/esptoo 
l  -vv -cd ck -cb 115200 -cp /dev/cu.usbserial-A50285BI -ca 0x00000 -cf 
/var/folders/zj/9t2dfhl17f7cs0__nj42w8jh0000gp/T/arduino_build_985640/sk 
etch_nov29a.ino.bin
esptool v0.4.9 - (c) 2014 Ch. Klippel <ck@atelier-klippel.de>
  setting board to ck
  setting baudrate from 115200 to 115200
  setting port from /dev/tty.usbserial to /dev/cu.usbserial-A50285BI
  setting address from 0x00000000 to 0x00000000
  espcomm_upload_file
  espcomm_upload_mem
opening port /dev/cu.usbserial-A50285BI at 115200
  tcgetattr
  tcsetattr
  serial open
opening bootloader
resetting board
trying to connect
  espcomm_send_command: sending command header
  espcomm_send_command: sending command payload
  espcomm_send_command: receiving 2013 bytes of data
error: failed reading byte
warning: espcomm_send_command: cant receive slip payload data
trying to connect
  espcomm_send_command: sending command header
  espcomm_send_command: sending command payload
  espcomm_send_command: receiving 2013 bytes of data
error: failed reading byte
warning: espcomm_send_command: cant receive slip payload data
trying to connect
  espcomm_send_command: sending command header
  espcomm_send_command: sending command payload
  espcomm_send_command: receiving 2013 bytes of data
error: failed reading byte
warning: espcomm_send_command: cant receive slip payload data
resetting board
trying to connect
  espcomm_send_command: sending command header
  espcomm_send_command: sending command payload
  espcomm_send_command: receiving 2013 bytes of data
error: failed reading byte
warning: espcomm_send_command: cant receive slip payload data
trying to connect
  espcomm_send_command: sending command header
  espcomm_send_command: sending command payload
  espcomm_send_command: receiving 2013 bytes of data
error: failed reading byte
warning: espcomm_send_command: cant receive slip payload data
trying to connect
  espcomm_send_command: sending command header
  espcomm_send_command: sending command payload
  espcomm_send_command: receiving 2013 bytes of data
error: failed reading byte
warning: espcomm_send_command: cant receive slip payload data
resetting board
trying to connect
  espcomm_send_command: sending command header
  espcomm_send_command: sending command payload
  espcomm_send_command: receiving 2013 bytes of data
error: failed reading byte
warning: espcomm_send_command: cant receive slip payload data
trying to connect
  espcomm_send_command: sending command header
  espcomm_send_command: sending command payload
  espcomm_send_command: receiving 2013 bytes of data
error: failed reading byte
warning: espcomm_send_command: cant receive slip payload data
trying to connect
  espcomm_send_command: sending command header
  espcomm_send_command: sending command payload
  espcomm_send_command: receiving 2013 bytes of data
error: failed reading byte
warning: espcomm_send_command: cant receive slip payload data
warning: espcomm_sync failed
error: espcomm_open failed
error: espcomm_upload_mem failed
error: espcomm_upload_mem failed
Gast #5227694
Lesenswert?

Hast du die (vermutlich vorinstallierte) AT Firmware getestet? Kannst du 
mit einem Terminal Programm AT Befehle senden und die Antworten sehen?

Hast du mal zwei Taster so angeschlossen, wie ich es Dir empfohlen habe, 
sowie die empfohlenen Widerstände?

Wie hast du die Stromversorgung realisiert?
Gast #5227739
Lesenswert?

Stefan U. schrieb:
> Hast du die (vermutlich vorinstallierte) AT Firmware getestet?
> Kannst du
> mit einem Terminal Programm AT Befehle senden und die Antworten sehen?
>
> Hast du mal zwei Taster so angeschlossen, wie ich es Dir empfohlen habe,
> sowie die empfohlenen Widerstände?
>
> Wie hast du die Stromversorgung realisiert?


1.) Wenn ich RX mit TX verbinde dann kommt die Eingabe wieder zurück, 
wenn ich den Wandler jedoch mit dem Modul verbinde/verbunden lasse und 
dann "AT" gefolgt
von einem Zeilenumbruch "\r" eingebe kommt nur: "⸮ ⸮"
Baud ist 115200...
Gast #5227781
Lesenswert?

sry, Rest habe ich vergessen :(

2) Ich dachte wenn der Wandler Reset & Co unterstützt sind diese nicht 
mehr notwendig?

3) Die Stromversorgung ist über einen 3,3 bzw. 5V (über Jumper 
einstellbar) Breadboard Spannungswandler realisiert.
#5227787
Lesenswert?

Neil Kolban schreibt in seinem /Kolban’s book on the ESP8266/ [1]  zu 
den Bootmodes mit GPIO15, GPIO0, GPIO2 folgendes:
1
Value    Decimal   Meaning
2
[15-0-2] Value
3
000      0         Remapping ... details unknown.
4
001      1         Boot from the data received from UART0.
5
                   Also includes flashing the flash memory
6
                   for subsequent normal starts.
7
010      2         Jump start
8
011      3         Boot from flash memory
9
100      4         SDIO low speed V2
10
101      5         SDIO high speed V1
11
110      6         SDIO low speed V1
12
111      7         SDIO high speed V2

=> Bootmodus 1 und 3 sind die die du brauchst.
=> Pullup an GPIO2

Die ESP8266_ESP12.png Schaltung tut bei mir.
Bei 8pin-mini-Modulen gibt es keinen GPIO15 rausgeführt - der hat wohl 
immer einen Pulldown.

mfg mf

[1] http://neilkolban.com/tech/esp8266/
Angehängte Dateien:
Gast #5227984
Lesenswert?

Joachim K. schrieb:
> Neil Kolban schreibt in seinem /Kolban’s book on the ESP8266/ [1]
> zu
> den Bootmodes mit GPIO15, GPIO0, GPIO2 folgendes:Value    Decimal
> Meaning
> [15-0-2] Value
...
>
> => Bootmodus 1 und 3 sind die die du brauchst.
> => Pullup an GPIO2
>
> Die ESP8266_ESP12.png Schaltung tut bei mir.

> [1] http://neilkolban.com/tech/esp8266/

Kann ich heute Abend probieren, aber was ist dann der Vorteil von dem 
RTS Anschluss wenn es da auch wieder manuell über Taster gelöst wird?
Gast #5227986
Lesenswert?

Thomas schrieb:
> Joachim K. schrieb:
>>
>> => Bootmodus 1 und 3 sind die die du brauchst.
>> => Pullup an GPIO2
>>
>> Die ESP8266_ESP12.png Schaltung tut bei mir.
>
>> [1] http://neilkolban.com/tech/esp8266/
>
> Kann ich heute Abend probieren, aber was ist dann der Vorteil von dem
> RTS Anschluss wenn es da auch wieder manuell über Taster gelöst wird?

Ich werde es auch heute Abend/Nachmittag probieren, Danke für den Tipp 
Joachim.
#5228027
Lesenswert?

Zu dem von Dir benutzten "esptool v0.4.9" gibt es einen offenen Issue 
auf Github:
https://github.com/esp8266/Arduino/issues/3124

Um auszuschliessen, dass das Problem vielleicht einfach mit diesem Tool 
zusammenhängt, würde ich an Deiner Stelle einfach mal kurz die 
aktuellste Version von "esptool.py" ausprobierst, das mittlerweile von 
Espressif selbst maintained wird:
https://github.com/espressif/esptool

Dieses Programm dann z.B. einfach mal so aufrufen, dass es die 
MAC-Adresse des ESP8266 anzeigen soll:
1
python esptool.py --port <Serieller Port mit dem USB-UART-Wandler> --baud 115200 read_mac

Ansonsten wird in dem oben erwähnten Issue auf Github noch auf eine sehr 
ausführliche Troubleshooting-Seite verlinkt, die genau bei solchen 
Upload/Sync-Problemen in der Arduino-IDE helfen soll:
https://github.com/esp8266/Arduino/blob/209c87715768b0f280bb85b3832883487dc4d2e9/doc/faq/a01-espcomm_sync-failed.md
Gast #5228049
Lesenswert?

>> Versuche jetzt andere Baudraten.
> Bei Baud 250000 kommt folgende Ausgabe: <⸮<8⸮

Weiter versuchen, bis was lesbares heraus kommt. Meistens klappt es mit 
115200, 74880, 57600, 19200 oder 9600.
Persönliche Seite #5228144
Lesenswert?

Stefan U. schrieb:
>>> Versuche jetzt andere Baudraten.
>> Bei Baud 250000 kommt folgende Ausgabe: <⸮<8⸮
>
> Weiter versuchen, bis was lesbares heraus kommt. Meistens klappt es mit
> 115200, 74880, 57600, 19200 oder 9600.

Das haben die irgendwann mal geändert ... Es gab ESP8266, die haben 9600 
Baud verwendet, die neueren verwenden 115200 im Flash-Modus.
Gast #5228466
Lesenswert?

Joachim S. schrieb:
> python esptool.py --port <Serieller Port mit dem USB-UART-Wandler>
> --baud 115200 read_mac

Mac:esptool-master Max$ python esptool.py --port 
/dev/cu.usbserial-A50285BI  --baud 115200 read_mac
Traceback (most recent call last):
  File "esptool.py", line 34, in <module>
    import serial
ImportError: No module named serial

Scheint nicht zu klappen :(
#5228547
Lesenswert?

Max schrieb:
> Nico W. schrieb:
>> pip install pyserial
>
> Requirement already satisfied: pyserial in
> /Library/Python/2.7/site-packages
>
> :/.
>
> Hatte Python extra davor installiert...

Würde vermuten, dass Dein Standard-Python-Interpreter "python" python v3 
ist, ist Standard-"pip" hingegen pip v2.

Probiere also mal
1
python2 esptool.py ...

oder
1
python2.7 esptool.py ...

oder
1
pip3 install pyserial
2
python esptool.py ...
Gast #5228573
Lesenswert?

Joachim S. schrieb:

> pip3 install pyserial
> python esptool.py ...

Das wars ;-)

Er probiert eine Weile (Punkte und striche) verbindung aufzubauen, 
scheitert aber am Ende.

Sowohl der FTDI Wandler als auch der ESP Blinken manchmal...:

Mac:esptool-master Max$ python esptool.py --port 
/dev/cu.usbserial-A50285BI  --baud 115200 read_mac
esptool.py v2.2
Connecting........_____....._____....._____....._____....._____.....____ 
_....._____....._____....._____....._____

A fatal error occurred: Failed to connect to Espressif device: Timed out 
waiting for packet header
Gast #5228606
Lesenswert?

Joachim S. schrieb:
> Sehr strange. Mir zumindest gehen so langsam die Ideen aus, an was
> es
> denn sonst noch liegen könnte.
> Kannst Du vielleicht mal ein (ausreichend hochauflösendes) Foto Deines
> kompletten Setups hochladen?

Kann ich machen, wenn wir es auch so nicht ans laufen kriegen wäre es 
NOTFALLS eine Möglichkeit die mir gerade spontan eingefallen dass ich 
z.B. dir per Skype, Teamviewer o.ä. mein Setup zeige bzw. ggf. neu 
stecke.
#5228636
Lesenswert?

Habe bislang nur einen ganz kurzen Blick darauf geworfen, aber ein 
Fehler ist mir sofort in's Auge gesprungen:

Die GND-Leitung von Deinem USB-UART-Adapter ist nicht mit GND vom Rest 
der Schaltung verbunden. Schon deshalb kann es vermutlich gar nicht 
funktionieren.

Probiere als erstes mal aus, ob das vielleicht schon des Rätsels Lösung 
ist - falls nicht, schaue ich es mir genauer an.
Gast #5228648
Lesenswert?

Joachim S. schrieb:
> Habe bislang nur einen ganz kurzen Blick darauf geworfen, aber ein
> Fehler ist mir sofort in's Auge gesprungen:
>
> Die GND-Leitung von Deinem USB-UART-Adapter ist nicht mit GND vom Rest
> der Schaltung verbunden. Schon deshalb kann es vermutlich gar nicht
> funktionieren.
>
> Probiere als erstes mal aus, ob das vielleicht schon des Rätsels Lösung
> ist - falls nicht, schaue ich es mir genauer an.

;-)

Mac:esptool-master Max$ python esptool.py --port 
/dev/cu.usbserial-A50285BI  --baud 115200 read_mac
esptool.py v2.2
Connecting....
Detecting chip type... ESP8266
Chip is ESP8266EX
Uploading stub...
Running stub...
Stub running...
MAC: 2c:3a:e8:41:25:29
Hard resetting...


Scheint zu klappen, in der Arduino IDE kommen allerdings immer noch 
Fehler:

esptool v0.4.9 - (c) 2014 Ch. Klippel <ck@atelier-klippel.de>
  setting board to ck
  setting baudrate from 115200 to 115200
  setting port from /dev/tty.usbserial to /dev/cu.usbserial-A50285BI
  setting address from 0x00000000 to 0x00000000
  espcomm_upload_file
  espcomm_upload_mem
opening port /dev/cu.usbserial-A50285BI at 115200
  tcgetattr
  tcsetattr
  serial open
opening bootloader
resetting board
trying to connect
  espcomm_send_command: sending command header
  espcomm_send_command: sending command payload
trying to connect
  espcomm_send_command: sending command header
  espcomm_send_command: sending command payload
  espcomm_send_command: receiving 2 bytes of data
  espcomm_send_command: receiving 2 bytes of data
  espcomm_send_command: receiving 2 bytes of data
  espcomm_send_command: receiving 2 bytes of data
  espcomm_send_command: receiving 2 bytes of data
  espcomm_send_command: receiving 2 bytes of data
  espcomm_send_command: receiving 2 bytes of data
  espcomm_send_command: receiving 2 bytes of data
Beim Hochladen des Sketches ist ein Fehler aufgetreten
Uploading 226080 bytes from 
/var/folders/zj/9t2dfhl17f7cs0__nj42w8jh0000gp/T/arduino_build_347465/sk 
etch_nov30a.ino.bin  to flash at 0x00000000
  erasing flash
  size: 037320 address: 000000
  first_sector_index: 0
  total_sector_count: 56
  head_sector_count: 16
  adjusted_sector_count: 40
  erase_size: 028000
  espcomm_send_command: sending command header
  espcomm_send_command: sending command payload
  setting timeout 15000
  setting timeout 100
  espcomm_send_command: receiving 2 bytes of data
  writing flash
warning: espcomm_send_command: didn't receive command response
warning: espcomm_send_command(FLASH_DOWNLOAD_DATA) failed
warning: espcomm_send_command: wrong direction/command: 0x01 0x03, 
expected 0x01 0x04
closing bootloader
error: espcomm_upload_mem failed


Ideen? ;-)
Beitrag #5228652 wurde von einem Moderator gelöscht.
#5228722
Lesenswert?

Na das sieht doch schon mal zumindest besser aus - endlich ein Erfolg. 
:)

Woran das Problem mit der Arduino-IDE liegt, kann ich Dir auf Anhieb 
zwar nicht sagen (schon deshalb, weil ich bislang keine eigene Erfahrung 
damit habe), aber probiere doch mal testweise einfach, eine aktuelle 
Version der "NodeMCU-Firmware" über esptool.py zu flashen.
Dazu diese Datei herunterladen:
https://github.com/oyooyo/nodemcu-firmware/raw/uuid.space-dev/bin/nodemcu-firmware.bin
und dann per
1
python esptool.py --port /dev/cu.usbserial-A50285BI --baud 115200 write_flash --flash_mode qio --flash_freq 40m 0x00000 nodemcu-firmware.bin
flashen. Wenn das erfolgreich funktioniert, sollte das Flashen von über 
die Arduino-IDE erstellten Programmen ebenfalls funktionieren.
Gast #5228732
Lesenswert?

Hi!
Wegen uploads aus der Arduino ide... Ich glaube da war mal was wegen 
Arduino und Treiber auf dem Mac... Da gab es mal ein Problem... Kann 
aber leider keinen link nennen... Schön mal versucht einen uploads unter 
Linux oder Windows versucht? Hier im Ort hatte ein Schüler mit einem Mac 
das selbe Problem...
Gast #5228733
Lesenswert?

Joachim S. schrieb:
> Na das sieht doch schon mal zumindest besser aus - endlich ein
> Erfolg.
> :)
>
> Woran das Problem mit der Arduino-IDE liegt, kann ich Dir auf Anhieb
> zwar nicht sagen (schon deshalb, weil ich bislang keine eigene Erfahrung
> damit habe), aber probiere doch mal testweise einfach, eine aktuelle
> Version der "NodeMCU-Firmware" über esptool.py zu flashen.
> Dazu diese Datei herunterladen:
> https://github.com/oyooyo/nodemcu-firmware/raw/uui...
> und dann perpython esptool.py --port /dev/cu.usbserial-A50285BI --baud
> 115200 write_flash --flash_mode qio --flash_freq 40m 0x00000
> nodemcu-firmware.bin
> flashen. Wenn das erfolgreich funktioniert, sollte das Flashen von über
> die Arduino-IDE erstellten Programmen ebenfalls funktionieren.

Joachim, das flashen per Konsole klappt :Freu

Mac:esptool-master Max$ python esptool.py --port 
/dev/cu.usbserial-A50285BI --baud 115200 write_flash --flash_mode qio 
--flash_freq 40m 0x00000 nodemcu-firmware.bin
esptool.py v2.2
Connecting....
Detecting chip type... ESP8266
Chip is ESP8266EX
Uploading stub...
Running stub...
Stub running...
Configuring flash size...
Auto-detected Flash size: 4MB
Flash params set to 0x0040
Compressed 797888 bytes to 516135...
Wrote 797888 bytes (516135 compressed) at 0x00000000 in 45.3 seconds 
(effective 140.9 kbit/s)...
Hash of data verified.

Leaving...
Hard resetting...

Das flashen über die Arduino IDE klappt aber leider nicht :/- 
Fehlermeldung siehe vorheriger Beitrag.
Ich hänge mal ein Bild meiner Einstellungen an, vllt. liegt es daran...
Angehängte Dateien:
Gast #5228864
Lesenswert?

Wolfgang H. schrieb:
> Hi!
> Wegen uploads aus der Arduino ide... Ich glaube da war mal was wegen
> Arduino und Treiber auf dem Mac... Da gab es mal ein Problem... Kann
> aber leider keinen link nennen... Schön mal versucht einen uploads unter
> Linux oder Windows versucht? Hier im Ort hatte ein Schüler mit einem Mac...


Ich probiere es in einer virtuellen Maschine...
#5228895
Lesenswert?

Max schrieb:
> Das flashen über die Arduino IDE klappt aber leider nicht :/-
> Fehlermeldung siehe vorheriger Beitrag.
> Ich hänge mal ein Bild meiner Einstellungen an, vllt. liegt es daran...

Da ich wie gesagt nicht die Arduino-IDE benutze, weiss ich die korrekten 
Einstellungen nicht genau.
Was mir aber auffällt:
- "Flash Mode" kannst Du bestimmt auf "QIO" stellen (ist schneller als 
DIO)
- "Flash Size" ist bei den ESP-12-Modulen immer 4MB
Beides dürfte allerdings eher nicht die Ursache Deines Problems sein.

Die "Reset Method" ist das einzige, was mir noch aufgefallen ist. Ich 
habe keine Ahnung, was die Einstellung "ck" genau bedeuten soll, aber an 
Deiner Stelle würde ich mal die weiter oben genannten Einstellungen für 
"Flash Mode" und "Flash Size" einstellen, und dann bei der "Reset 
Method" alle Möglichkeiten durchprobieren, ob eine davon funktioniert.
#5228939
Lesenswert?

Stefan U. schrieb:
> ck ist für die vorliegende Beschaltung richtig

Ganz sicher, Stefan?
Weil's mich eben doch mal interessiert hat, was mit der Option "ck" 
eigentlich gemeint ist, habe ich es eben mal gegoogelt und bin auf diese 
Seite gestossen:
https://tttapa.github.io/ESP8266/Chap06%20-%20Uploading.html

Ich habe das jetzt nur überflogen, aber für mich klang das so, als ob 
die Option "ck" dann gewählt werden sollte, wenn man nur die DTR, aber 
nicht die RTS-Leitung verwendet; und es auch eine Option "nodemcu" gibt, 
die man dann verwenden sollte, wenn man sowohl die DTR- als auch die 
RTS-Leitung benutzt.
Da Max das ja mittlerweile tut, hätte ich jetzt eher gedacht, dass die 
richtige Option für ihn da "nodemcu" wäre...
Gast #5228944
Lesenswert?

Wolfgang H. schrieb:
> Hi!
> Wegen uploads aus der Arduino ide... Ich glaube da war mal was wegen
> Arduino und Treiber auf dem Mac... Da gab es mal ein Problem... Kann
> aber leider keinen link nennen... Schön mal versucht einen uploads unter
> Linux oder Windows versucht? Hier im Ort hatte ein Schüler mit einem Mac
> das selbe Problem...

Gerade auf einem reinem Windows Gerät probiert, klappt auch nicht
Gast #5228946
Lesenswert?

Joachim S. schrieb:

> Da Max das ja mittlerweile tut, hätte ich jetzt eher gedacht, dass die
> richtige Option für ihn da "nodemcu" wäre...

Wenn als Reset Methode nodemcu ausgewählt ist:

esptool v0.4.9 - (c) 2014 Ch. Klippel <ck@atelier-klippel.de>
  setting board to nodemcu
  setting baudrate from 115200 to 115200
  setting port from /dev/tty.usbserial to /dev/cu.usbserial-A50285BI
  setting address from 0x00000000 to 0x00000000
  espcomm_upload_file
  espcomm_upload_mem
opening port /dev/cu.usbserial-A50285BI at 115200
  tcgetattr
  tcsetattr
  serial open
opening bootloader
resetting board
trying to connect
  espcomm_send_command: sending command header
  espcomm_send_command: sending command payload
trying to connect
  espcomm_send_command: sending command header
  espcomm_send_command: sending command payload
trying to connect
  espcomm_send_command: sending command header
  espcomm_send_command: sending command payload
resetting board
trying to connect
  espcomm_send_command: sending command header
  espcomm_send_command: sending command payload
trying to connect
  espcomm_send_command: sending command header
  espcomm_send_command: sending command payload
  serialport_receive_C0: 92 instead of C0
trying to connect
  espcomm_send_command: sending command header
  espcomm_send_command: sending command payload
  serialport_receive_C0: 65 instead of C0
resetting board
trying to connect
  espcomm_send_command: sending command header
  espcomm_send_command: sending command payload
trying to connect
  espcomm_send_command: sending command header
  espcomm_send_command: sending command payload
  serialport_receive_C0: F2 instead of C0
trying to connect
  espcomm_send_command: sending command header
  espcomm_send_command: sending command payload
  serialport_receive_C0: D7 instead of C0
warning: espcomm_sync failed
error: espcomm_open failed
error: espcomm_upload_mem failed
error: espcomm_upload_mem failed
Gast #5228976
Lesenswert?

Flashen per IDE klappt jetzt unter Windoof, OSX klappt immer noch nicht.

Kann also wirklich so sein dass es da ein Problem gibt.

Ich hoffe dass hier jemand eine Lösung weiß, ansonsten werde ich mal in 
einem anderem Forum nachfragen (Github?)

Was muss ich jetzt umstecken um vom Flash Mode in den Betrieb zu 
wechseln?
#5229037
Lesenswert?

Max schrieb:
> Flashen per IDE klappt jetzt unter Windoof, OSX klappt immer noch nicht.

Was hast Du unter Windows geändert, dass es jetzt klappt?

> Was muss ich jetzt umstecken um vom Flash Mode in den Betrieb zu
> wechseln?

Der normale Betrieb startet, wenn GPIO0 (bei Dir ja verbunden mit der 
DTR-Leitung) beim Start (z.B. durch Reset oder Einschalten der 
Stromversorgung) auf high-Level ist.
Du kannst also z.B. irgendein serielles Terminal-Programm zu benutzen, 
bei dem Du den Status der DTR und RTS-Leitungen togglen kannt - damit 
kannst Du den ESP resetten (RTS) und den Zustand von GPIO0 verändern 
(DTR).

p.s.: Falls die Arduino-IDE partout Probleme macht, wäre es evtl. für 
Dich eine Alternative, den ESP8266 erst einmal nicht in C (Arduino-IDE), 
sondern z.B. in LUA zu programmieren (NodeMCU-Firmware). Das Flashen der 
NodeMCU-Firmware klappt ja schon mal - wenn Du die flashst, und dann 
z.B. die (in Java geschriebene) Software "esplorer" benutzt, kannst Du 
loslegen.
Gast #5229128
Lesenswert?

Joachim S. schrieb:
> Max schrieb:
> Flashen per IDE klappt jetzt unter Windoof, OSX klappt immer noch nicht.
>
> Was hast Du unter Windows geändert, dass es jetzt klappt?

GND Kabel hatte sich beim PC Wechsel gelöst ;-)

> Was muss ich jetzt umstecken um vom Flash Mode in den Betrieb zu
> wechseln?

> Der normale Betrieb startet, wenn GPIO0 (bei Dir ja verbunden mit der
> DTR-Leitung) beim Start (z.B. durch Reset oder Einschalten der
> Stromversorgung) auf high-Level ist.
> Du kannst also z.B. irgendein serielles Terminal-Programm zu benutzen,
> bei dem Du den Status der DTR und RTS-Leitungen togglen kannt - damit
> kannst Du den ESP resetten (RTS) und den Zustand von GPIO0 verändern
> (DTR).

Das wären welche Befehle? xD

> p.s.: Falls die Arduino-IDE partout Probleme macht, wäre es evtl. für
> Dich eine Alternative, den ESP8266 erst einmal nicht in C (Arduino-IDE),
> sondern z.B. in LUA zu programmieren (NodeMCU-Firmware). Das Flashen der
> NodeMCU-Firmware klappt ja schon mal - wenn Du die flashst, und dann
> z.B. die (in Java geschriebene) Software "esplorer" benutzt, kannst Du
> loslegen.
esplorer gibt es soweit ich weiß nicht für OSX, außerdem möchte ich 
vorerst kein Lua benutzen... ich hoffe dass ich für das Problem eine 
Lösung finde, ansonsten werde ich wohl ein Windoof Gerät kaufen 
müssen...
#5229151
Lesenswert?

Max schrieb:
>> Der normale Betrieb startet, wenn GPIO0 (bei Dir ja verbunden mit der
>> DTR-Leitung) beim Start (z.B. durch Reset oder Einschalten der
>> Stromversorgung) auf high-Level ist.
>> Du kannst also z.B. irgendein serielles Terminal-Programm zu benutzen,
>> bei dem Du den Status der DTR und RTS-Leitungen togglen kannt - damit
>> kannst Du den ESP resetten (RTS) und den Zustand von GPIO0 verändern
>> (DTR).
>
> Das wären welche Befehle? xD

Es gibt zwar bestimmt auch irgendwelche Befehle, mit denen man das 
machen kann - aber zum einen weiss ich nicht, wie die bei OSX lauten, 
zum anderen habe ich eigentlich gemeint, Du sollst ein Terminalprogramm 
mit eigener GUI nehmen, bei dem man den Status der RTS und DTR-Leitungen 
einfach per Mausklick togglen kann.
So wie hier zu sehen (oben Mitte):
https://i0.wp.com/esp8266.ru/wp-content/uploads/ESPlorer-panels.png

> esplorer gibt es soweit ich weiß nicht für OSX

Ist wie gesagt in Java geschrieben, und müsste demnach eigentlich auch 
unter OSX laufen.

>, außerdem möchte ich
> vorerst kein Lua benutzen...

esplorer ist zwar hauptsächlich für LUA, MicroPython und die AT-Firmware 
sinnvoll. Aber es kann auch bei Verwendung der Arduino-IDE sinnvoll 
sein, weil man es als einfaches Terminalprogramm nutzen kann, um z.B. 
die RTS- und DTR-Leitungen zu steuern und Ausgaben vom ESP8266 über die 
serielle Schnittstelle zu sehen.

> ich hoffe dass ich für das Problem eine
> Lösung finde, ansonsten werde ich wohl ein Windoof Gerät kaufen
> müssen...

Dein Problem hast Du mittlerweile ja bereits als GitHub-Issue gemeldet, 
und da kann man Dir mittlerweile wohl wirklich am besten helfen, weil es 
sich beim noch verbliebenen Problem tatsächlich um eine Art Bug zu 
handeln scheint.

Ich vermute übrigens, dass Du OSX "High Sierra" benutzt, und man Deinen 
Issue als Duplikat von Issue #3711 einstufen und schliessen wird:
https://github.com/esp8266/Arduino/issues/3711

Kurz zusammengefasst, falls zukünftig jemand mit dem gleichen Problem 
über eine Suche auf diesen Thread stösst:
Es scheint, als ob der Upload unter OSX High Sierra tatsächlich nicht 
richtig funktioniert, wenn man einen USB-UART-Adapter mit FTDI-Chip, und
den Standard-FTDI-Treiber von Apple benutzt.
Was offenbar helfen soll:
- Stattdessen den Original-FTDI-Treiber benutzen
- Die aktualisierte Version des esptool-ck in der Version 0.4.12 
benutzen, in der das Problem offenbar behoben ist
- Warten, bis eine aktualisierte Version der Arduino-IDE herauskommt, 
die esptool-ck in einer Version >= 0.4.12 bereits integriert hat ;-)
Gast #5229212
Lesenswert?

Max schrieb:
> Was muss ich jetzt umstecken um vom Flash Mode in den Betrieb zu
> wechseln?

Eigentlich brauchst du die DTR und RTS Leitungen nur ein mal, pro ESP.
Danach kannst du sie abklemmen.
(habe an solchen Stellen auch schon mal DipSwitches oder Jumper gesehen)


Alle weiteren Uploads, nach dem initialen ersten Mal, können per OTA 
erfolgen.
(wenn du dafür Sorge trägst)
Gast #5229498
Lesenswert?

> - Die aktualisierte Version des esptool-ck in der Version 0.4.12
> benutzen, in der das Problem offenbar behoben ist
> - Warten, bis eine aktualisierte Version der Arduino-IDE herauskommt,
> die esptool-ck in einer Version >= 0.4.12 bereits integriert hat ;-)

Wie kann ich die aktuelle Version einbinden? Ich habe sie von github 
gedownloadet. In welchen der Ordner des Arduino Verzeichnisses gehört 
"esptool" rein?
Gast #5229531
Lesenswert?

Max schrieb:
> Arduino F. schrieb:
>> Da wo es jetzt auch schon liegt!
>>
>> Das Zauberwort heißt: "ersetzen"
>
> Gefunden ;-)

Sucess! Nach dem updaten des esptools klappt das flashen!!!!


Leider habe ich noch eine Sache nicht verstanden: wie ich den ESP in den 
normalen Betriebsmodus bekomme...

Wie auf den Bildern weiter oben zu sehen ist geht bei mir sowohl DTR auf 
GPIO0 als auch ein Widerstand auf Plus- so hat sowohl das flashen unter 
Windoof als auch unter OSX geklappt. Laut mehreren Internetseiten müsste 
aber GPIO0 im Betriebsmodus auf Plus sein, so wie es jetzt schon ist. 
Auch wenn ich DTR ausgesteckt habe oder den Widerstand auf GND gesteckt 
habe blieb er vmtl. immer im Flashmodus....

Ich hoffe das wir das letzte Problem jetzt auch noch gelöst bekommen ;-)
Gast #5229564
Lesenswert?

Joachim, vielen vielen Dank für den entscheidenden Hinweis mit der 
höheren Version!!!

Eine Frage habe ich noch: welchen Spannungswandler MIT GENÜGEND LEISTUNG 
empfehlt ihr für den späteren Einsatz in Projekten? ich habe hier noch 
AS1117 rumliegen, die werden aber zu schwach sein oder?
#5229569
Lesenswert?

Max schrieb:
> Joachim, vielen vielen Dank für den entscheidenden Hinweis mit der
> höheren Version!!!
>
> Eine Frage habe ich noch: welchen Spannungswandler MIT GENÜGEND LEISTUNG
> empfehlt ihr für den späteren Einsatz in Projekten? ich habe hier noch
> AS1117 rumliegen, die werden aber zu schwach sein oder?

Der AMS1117-3.3 ist erst einmal völlig ausreichend; den benutzen auch 
viele Boards mit ESP8266, z.B. das "NodeMCU DevKit", das "Witty Board" 
etc.
Gast #5229750
Lesenswert?

> Leider habe ich noch eine Sache nicht verstanden:
> wie ich den ESP in den normalen Betriebsmodus bekomme...

Das steht doch dort, sorry das ich diese Seite zum gefühlten 10, mal 
nenne:
http://stefanfrings.de/esp8266/index.html#fwupdate

Zitat:
1
Normaler Start:
2
GPIO0 = High oder offen
3
GPIO1 (TxD) = High durch Widerstand oder offen
4
GPIO2 = High durch Widerstand oder offen
5
GPIO15 = Low
6
...
7
Nach dem Start können diese Pins jedoch als frei programmierbare I/O Anschlüsse verwendet werden

> Eine Frage habe ich noch: welchen Spannungswandler MIT GENÜGEND LEISTUNG
> empfehlt ihr für den späteren Einsatz in Projekten?

Auch das steht auf der Seite. Zitat:
1
Da die Stromaufnahme sehr starke Spitzen hat, empfehle ich dringend, einen 100µF (oder 220µF) Kondensator direkt an die VCC (3,3V) und GND Anschlüsse des Moduls zu löten. Außerdem sollte man den Spannungsregler sorgfältig auswählen. Einige Low-Drop Regler und manche Schaltnetzteile sind ungeeignet, weil sie die extremen Stromschwankungen zu träge ausregeln. Ich habe gute Erfahrungen mit dem LF33CV gemacht, der eignet sich auch für den Betrieb an Batterien bis knapp unter 3 Volt.

Du hast sie Dir nicht angeschaut, oder?

> Der AMS1117-3.3 ist erst einmal völlig ausreichend
Ja, der geht auch - bei ca 5V Eingangsspannung (mit weniger habe ich ihn 
nicht getestet).
#5229776
Lesenswert?

Max schrieb:
> Ok, wenn jedoch mal etwas mehr Leistung benötigt wird, welchen dann?
> (bsp. wenn noch mehrere sensoren genutzt werden)

Der AMS1117 liefert doch bis zu 1 Ampere, das ist doch eigentlich schon 
eine ganze Menge. Dass Du da mit ein paar der üblichen Sensoren auch nur 
in die Nähe kommst, halte ich für eher unwahrscheinlich.

Wenn es in Bezug auf den ESP8266 um geeignete Spannungsregler geht, geht 
es meiner Erfahrung nach fast immer um eine andere Frage:

Welcher Spannungsregler ist geeignet, wenn man den ESP8266 mit 
Batterien/Akkus betreiben will?

Dafür ist der AMS1117 nämlich leider völlig ungeignet, weil der auch 
ohne Last wohl schon eine sehr hohe Stromaufnahme hat.
Häufig wird für diesen Fall dann der MCP1700 empfohlen - oder, dass man 
den ESP direkt z.B. an LiFePo4-Akkus betreibt, ganz ohne 
Spannungsregler.
Gast #5229846
Lesenswert?

Hi,

leider habe ich das Problem wenn ich die Arduino IDE neustarte meine 
package_esp8266com_index 18.59.24.json datei überschrieben wird, vmtl. 
weil ich nur die version angepasst habe und nicht die ganzen github 
links (sehr viele :/)

verwendet jemand esptool 0.12.1 und könnte mir seine angepasste datei 
zur verfügung stellen?
Gast #5229847
Lesenswert?

Max schrieb:
> Hi,
>
> leider habe ich das Problem wenn ich die Arduino IDE neustarte meine
> package_esp8266com_index 18.59.24.json datei überschrieben wird, vmtl.
> weil ich nur die version angepasst habe und nicht die ganzen github
> links (sehr viele :/)
>
> verwendet jemand esptool 0.12.1 und könnte mir seine angepasste datei
> zur verfügung stellen?

das das datum mit rein kopiert wurde war ausversehen...
Gast #5229905
Lesenswert?

Affektiertes Gehabe schrieb:
> Stefan U. schrieb:
> Das steht doch dort, sorry das ich diese Seite zum gefühlten 10, mal
> nenne:
> http://stefanfrings.de/esp8266/index.html#fwupdate
>
> Stefan U. schrieb:
> Du hast sie Dir nicht angeschaut, oder?
>
> Vergiss es einfach. Der antwortet ja noch nicht einmal auf Deine Fragen.
>
> Tue niemand Gutes -so geschieht Dir auch nichts Böses

Tut mir leid, ich hatte vorher geantwortet und es wurde aber auf dem 
Handy nicht richtig gesendet. Habe heute Nachmittag starke Kopfschmerzen 
und bin etwas durcheinander.

Ja ich habe mir die Seite angeschaut, aber MANCHE Abschnitte nur 
überflogen...

@Joachim: idee woran es liegt dass die datei ständig überschrieben wird?
Gast #5230087
Lesenswert?

Ich habe jetzt auch nochmal gegooglet aber keine Lösung gefunden.

Ich hoffe echt dass jemand eine Idee hat dass es daran jetzt nicht 
scheitert ;-)

Nochmal das Problem:

Das das Flashen unter OS X klappt muss das esptool geupdatet werden, 
deswegen habe ich die neuste Version gedownloadet, den alten Ordner 
gelöscht (natürlich Backup des Ordners gemacht) und durch den mit der 
neuen Version ersetzt. Dann die alte package_esp8266com_index.json durch 
die neue, vom Github Link weiter oben ersetzt.

Leider wird nun bei jedem (Neu-)start der Arduino IDE die Datei von der 
alten überschrieben und das Flashen klappt deswegen nicht mehr...
Gast #5230109
Lesenswert?

Max schrieb:
> Stefan U. schrieb:
> Schreib Dir doch ein Script, dass die Datei bei jedem Start wieder
> umkopiert. So schwer kann das doch nicht sein, ich dachte du bist
> (Hobby-)Programmierer?
>
> Ja klar, aber manchmal gibt es schönere Lösungen als das einfachste ;-).

Es kann ja sein dass Person XY weiß dass ein eintrag in einer bestimmten 
config Datei NOch verändert werden muss und dass das Problem besser löst 
wie ein kopieren der Datei Beim Start vom Programm...
Gast #5230257
Lesenswert?

Gerade läuft es auch nach neustart: Ich habe die aktuelle version von 
esptool einfach nicht in einen neuen Versionsordner sondern in den 
alten, er denkt jetzt das sei die alte, flashen läuft aber trotzdem ohne 
Fehler!

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