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!
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
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
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.
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
Du kannst eine niedrige Baudrate (300) einstellen und eine LED mit
Vorwiderstand (z.B. 2,2k Ohm) anschließen. Sie flackert, wenn der
Computer etwas sendet.
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
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?
Nim einen FTDI, der CP2102 funktioniert nicht wirklich unter macOS. Den
schrott hatte ich auch schon. Der FTDI ist der beste und wird unter
macOS erkannt und der läuft.
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.....
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.
> 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.
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...
Toxic schrieb:> 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.
Habe sie gestern bereits vertauscht, hat aber nichts verändert...
> die Zeichen die eingegeben wurden erscheinen im unteren Monitorfeld...
Dann versetze jetzt deinen ESP Chip in den Bootloader Modus, danach
kannst du die Firmware hochladen.
Max schrieb:> Mein Wandler hat keinen RTS und DTR Anschluss wie auf deiner> Zeichnung...
Also ein Fehlkauf!
Ersetze die Anschlüsse durch Taster gegen GND.
Nenne den einen Reset, und den anderen FLash
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...
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.
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?
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.
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!
Max schrieb:> Der Sketch verwendet 221935 Bytes (44%) des Programmspeicherplatzes. Das> Maximum sind 499696 Bytes.
Bemerke:
Du hast einen 4MByte ESP, keinen 512kByte.
Ich habe mir letztes Jahr selber ein kleines Board aufgebaut, schau mal
ob du mit dem Schaltplan klarkommst, Der Switch dient dazu um den
ESP8266 mit Spannung zu versorgen, der andere ist zum Programieren da.
> 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?
Arduino F. schrieb:> Max schrieb:>> Der Sketch verwendet 221935 Bytes (44%) des Programmspeicherplatzes. Das>> Maximum sind 499696 Bytes.>> Bemerke:> Du hast einen 4MByte ESP, keinen 512kByte.
Im Internet stand dass kleiner immer gehen müsste. Bei 4MByte tritt der
Fehler immer noch auf.
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
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.
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.
> 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.
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
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)
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.
Wie meinst du das?
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.
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.
> 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
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?
Max schrieb:> oder ist eine "Onboard" vorhanden?
Ja, ist vorhanden, ist aber Faktor 10 zu schwach.
Ein zusätzlicher 3,3V Regler und ein etwas dickerer Kondensator wird
nötig sein.
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.
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 ;-)
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.
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...
Stefan U. schrieb:> Heisst das, dein Hochladen klappt längst?
Nein, das ist fehlgeschlagen. Der alte Adapter ist auf dem "Rückweg",
der neue kommt morgen...
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 ;-)
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
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. :-(
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?
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...
Du empfängst etwas vom ESP, das ist schonmal gut. Versuche jetzt andere
Baudraten. Und beantworte meine anderen Fragen. Ich habe sie ja nun
wirklich oft genug wiederholt.
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.
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/
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?
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.
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
>> 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.
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.
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 :(
Nico W. schrieb:> pip install pyserial
Requirement already satisfied: pyserial in
/Library/Python/2.7/site-packages
:/.
Hatte Python extra davor installiert...
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
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
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?
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.
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.
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? ;-)
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
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...
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...
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...
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.
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...
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
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?
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.
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...
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 ;-)
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)
Nochmal:
Ich habe auf meiner Seite detailliert erklärt, welche Pins für den
Bootloader relevant sind und wann sie welchen Pegel haben müssen.
http://stefanfrings.de/esp8266/index.html#fwupdate
Hast du das gelesen?
Wenn nicht, dann mach das.
Hast du es verstanden?
Wenn nicht, dann stelle eine konkrete Frage dazu.
> - 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?
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 ;-)
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?
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.
> 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).
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.
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?
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...
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?
Arduino F. schrieb:> Max schrieb:> @Joachim:>> Stefan Us (stefanus), ich glaube, du bist jetzt in Ungnade gefallen.
Warum? ^^.
Joachim hatte vorher den entscheidenden Hinweis geliefert, dann dachte
ich dass er vllt. Auch da weiter weiß...
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...
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?
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 ;-).
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...
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!