Hallo zusammen, ich habe schon vor einiger Zeit mit ESP8266-Modulen ein Bastelprojekt umgesetzt. Aktuell würde ich den Chip gerne wieder nutzen um eine Spannung per WLAN zu überwachen. Dazu habe ich mir dieses Mal auch ein Modul geleistet, bei dem alle Pins des Chips zugänglich sind. Es ist folgendes Modul: http://shop.in-circuit.de/product_info.php?cPath=21&products_id=67 Programmiert habe ich die Module über die Arduino-Umgebung und einen USB-Seriell-Umsetzer. Probeweise habe ich als erstes mein Programm aus dem alten Bastelprojekt programmiert. Danach wollte ich mein neues Programm aufspielen. Leider ist es nun so, dass weiterhin das alte Programm auf dem ESP8266 läuft. Der Bootloader scheint zu funktionieren. Zumindest kann die Arduino-Umgebung erfolgreich mit dem Modul kommunizieren. Zum Programmieren lege ich GPIO0 während des Programmierens dauerhaft auf Masse, unterbreche kurz die Versorgungsspannung und starte dann die Programmierung. Ich kann machen und ändern was ich möchte aber auf dem ESP8266 läuft einfach immer das gleiche alte Programm, das ich als allererstes programmiert hatte. Was mache ich falsch? Grüße Michael
Hallo, da ja die Programmiertools eigentlich alle melden ob sie einen ESP im Programmiermode gefunden haben und auch anzigen, daß sie programmieren und bei fast allen Modulen die LED dann scön flackert. solltest Du ja zumindest wissen, ob er sich programmieren ließ. Wenn ja und es ist trotzdem nichts neues drauf, vermute ich mal, der ESP stürzt ab beim Umkopieren des Flash. Stromversorgung zu instabil ist dann ein Anwärter. GPIO2 muß nur beim Boot auf GND damit er beim Start in den Programmiermode geht. Ein Taster an GPIO, den man wenuge hundert ms nach Rest schon wieder loslassen kann, reicht also auch. Genauso wie mir ein Taster an Reset auch sinnvoller wäre, als dauern Spannung an und aus. Obwohl es dem ESP egal sein sollte. Gruß aus Berlin Michael
Das Schaltbild des Moduls ist unter http://wiki.in-circuit.de/images/e/eb/610000292A_handout.pdf zu finden. CH_PD dürfte hier als CHIP-EN bezeichnet sein und liegt über 12k an VCC. GPIO0 liegt ebenfalls über 12k an VCC und wird durch mich beim Programmieren hart auf GND gelegt. Die Arduino IDE meckert wenn ich nicht im Bootloader bin. Wenn ich im Bootloadermodus bin zeigt sie den Fortschritt an und wann sie fertig ist. Während des Programmierens flackern auch schön die LEDs am USB-Seriell Adapter. Nach dem Programmieren sehe ich an einem UDP-Paket, dass an mich geschickt wird direkt, dass die alte Software noch läuft. Die Spannungsversorgung ist eigentlich auf dem Board gut abgeblockt und wird von mir mit Nominal 3,3 V versorgt. Ich werde ihm mal ein paar % mehr Spannung gönnen aber ich fürchte, dass es nicht daran liegt. Das alte Programm, dass sich nicht überschreiben lässt geht nach kurzer Zeit in den Deep-Sleep Modus. Könnte mein Problem damit etwas zu tun haben? Ich würde aber erwarten, dass er im Bootloadermodus und während des Programmierens nie zu dieser Stelle kommt. Gibt es noch weitere Ideen? Grüße Michael
Ich habe jetzt noch zusätzlich wegen meiner Bedenken den Reset dauerhaft auf GND gelegt. Weiterhin habe ich die Spannung mal um 5 % erhöht. Beides hat leider nicht den gewünschten Erfolg gebracht.
>Nach dem Programmieren sehe ich an einem UDP-Paket, >dass an mich geschickt wird direkt, dass die alte Software noch läuft. Vieleicht flasht du ja dauernd die alte Software;)
Hallo, Michael schrieb: > Ich habe jetzt noch zusätzlich wegen meiner Bedenken den Reset dauerhaft > auf GND gelegt. Weiterhin habe ich die Spannung mal um 5 % erhöht. > Beides hat leider nicht den gewünschten Erfolg gebracht. Reset dauerhaft auf GND sollte dafür sorgen, daß der ESP garnichts mehr macht. Weder laufen noch programmieren. Wozu das also? Wenn Du dsagst, er schickt Dir ein UDP-Paket hat er sich also im WLAN angemeldet und dann sollte er keine mit Spannung o.ä. haben. Da würde ich dann auch eher an die Vermutung von holger (Gast) denken... Ein "ich bin da" über die serielle zu schicken wäre mir jedenfalls als Debug lieber als irgendein UDP-Paket. Hat die Arduino-IDE ja alles parat. Gruß aus Berlin Michael
Reset dauerhaft auf GND sorgt ja gerade dafür, das kein Reset durchgeführt wird. Mir war unwohl dabei den Pin offen zu lassen. Es hat allerdings keinen Unterschied gemacht. Dass ich die alte Software flashe kann ich eigentlich ausschließen. Die Datei, die aus /tmp heraus geflasht wird heisst wie mein Programm. Und der neue Programmcode unterscheidet sich merklich vom alten Programmcode.
evtl. mal ausserhalb der Arduino-IDE "blank.bin" flashen, und das Teil so mal komplett löschen?
Es scheint sich um kein Problem der Programmierumgebung zu handeln. Ich habe nun ein anderes Modul mit ESP8266 drangehängt (ein komplett anderes Modul mit anderem Aufbau). Dieses lässt sich problemlos mit dem neuen Programmcode beschreiben.
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.