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.
In der Arduino IDE ist ein Terminal Programm enthalten, es heißt dort "Serieller Monitor", im Werkzeuge Menü.
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.
Cp2102 ist schon OK und sollte auch unter osx laufen. Habe zwar gerade keines da aber unter mac OS 10.9 lief der bei mir.
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.
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.
Arduino F. schrieb: > Ja, dann: > https://github.com/esp8266/Arduino/blob/master/doc... Mein Wandler hat keinen RTS und DTR Anschluss wie auf deiner Zeichnung... Reicht die Verkabelung wie ich sie am Anfang genannt habe?
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.
Joachim S. schrieb: > Also: Besorg Dir auf Dauer einen USB-UART-Wandler mit herausgeführten ... Ich kann den falschen noch zurückschicken :-)
> 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 ;-)
schalte mal in den Voreinstellungen "Ausführliche Ausgabe während [x] Hochladen" ein.
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. :-(
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
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 |
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
:
Bearbeitet durch User
>> 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
1 | python2 esptool.py ... |
oder
1 | python2.7 esptool.py ... |
oder
1 | pip3 install pyserial |
2 | python esptool.py ... |
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.
Hi, hier die Bilder. Aufgebaut nach dem Github Link von weiter oben!
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? ;-)
Beitrag #5228652 wurde von einem Moderator gelöscht.
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.
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.
:
Bearbeitet durch User
ck ist für die vorliegende Beschaltung richtig
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
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
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?
Da wo es jetzt auch schon liegt! Das Zauberwort heißt: "ersetzen"
Arduino F. schrieb: > Da wo es jetzt auch schon liegt! > > Das Zauberwort heißt: "ersetzen" Gefunden ;-)
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 ;-)
Problem gefunden ;-) Falscher Pin für die interne LED, daher hat das Blink Example nicht funktioniert ;-////
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.
Ok, wenn jedoch mal etwas mehr Leistung benötigt wird, welchen dann? (bsp. wenn noch mehrere sensoren genutzt werden)
> 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...
Habe die Datei gefunden (https://github.com/esp8266/Arduino/blob/master/package/package_esp8266com_index.template.json) leider wird diese dennoch immer überschrieben...
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
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ß...
Jedenfalls kann ich bezüglich des Überschreibens der Datei nicht helfen. Mit der Arduino IDE habe ich nur sehr wenig Erfahrung.
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!
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.