Hallo ESP8266-Kenner, ich möchte eine custimized Lua-Firmware auf meine NodeMCU-Boards flashen. Die Firmware habe ich mir von der entsprechenden Website https://nodemcu-build.com erstellen lassen. Es kann also nicht daran liegen, dass ich etwas mit dem SDK oder dem "Make" falsch gemacht habe. Wenn ich das mit dem nodeMCU-Flasher probiere klappt es nicht. Damit kann ich zwar eine Standard-Lua-Firmware flashen aber nicht meine customized version. Deshalb möchte ich es mit dem offiziellen und aktuellen Flashtool von Espressif probieren. Ich habe aber keine Ahnung was ich dazu alles einstellen muss. Weiß jemand wie das geht? Noch etwas zu meinen Kenntnissen usw. Ich benutze Windows und habe keine Linux-Kenntnisse. (also irgendwelche Flashmöglichkeiten via Linux fallen flach) Ich möchte auch möglichst nicht per Kommandozeile flashen. Das offizielle Tool von Espressif müsste es ja locker hinbekommen, wenn man es denn richtig eingestellt hat. Bin dankbar für Hinweise oder links. Mit eigener Google-suche habe ich noch keine Anleitung für das Espressif-Flash-Tool gefunden. viele Grüße Stefan
Du mußt eigentlich nur das selbe einstellen wie in dem nodemcu-flasher... ich habs gerade mal probiert, geht auch mit dem espressif flasher. Guck dir die Einstellungen im Screenshot im Anhang an... Natürlich den Comport an deinen anpassen... Evtl. ist dein custombuild auch zu groß für den flash geworden ?? Marc
Wenn der Flashvorgang ansich geht aber der ESP irgendwie nicht laufen will, dann könntest du mal versuchen die init_data von deinem SDK einzuspielen. Da wurde nämlich mal was geändert: https://nodemcu.readthedocs.io/en/dev/en/flash/#sdk-init-data
Hallo Marc, vielen Dank für Deine Antwort. Ich habe es mit den Einstellungen im Bild probiert. Wenn ich auf "Start" klicke werden die Flash-Chip-Daten angezeigt, Die Status-LED hat einmal aufgeleuchtet, und die Statusanzeige wechselt von Idle zu Download aber sonst passiert nix. Der Fortschrittsbalken bleibt leer. Ich habe dann Windows erst mal seinem Liebelingshobby frönen lassen (noch mal neu starten) und dann nochmal alles probiert. Nix. Comport ist richtig eingestellt. In den Flashmodus versetzen klappt auch. Ich habe das flashen der INTERNAL://NODEMCU gleich noch einmal getestet. Das funktioniert. Noch kein Erfolg. Habe jetzt ein esp_init_data_default.bin File an Adresse 0x3fc000 mit dem NodeMCU-Programmer geflasht und dann noch einmal mit dem NodeMCU-Programmer meine firmware flashen probiert. Läuft nicht. :-(( Dann wieder INTERNAL://NODEMCU geflasht das geht nach wie vor. Die Boards die ich benutze sind die da http://www.exp-tech.de/media/catalog/product/cache/1/image/9df78eab33525d08d6e5fb8d27136e95/n/o/nodemcu_1_1.jpg Wie finde ich jetzt heraus welches die passende init_data-bin ist??? viele Grüße Stefan
> Ich möchte auch möglichst nicht per Kommandozeile flashen. Vielleicht kann ich Dich doch noch bekehren. Mit dem Tool von Espressif habe ich immer wieder Probleme, unter Linux und Windows auf mehreren Computern und mit unterschiedlichen Modulen. Aber das python Script esptool.py klappt super. https://github.com/espressif/esptool Nach der Installation von Python 3.6 musst du mit dem Befehl "pip install pyserial" noch ein Modul nachinstallieren. Mehr dazu hier: http://stefanfrings.de/esp8266/index.html
Hallo Stefan, ich bin ja dankbar für Hinweise aller Art. Wenn es irgendwie möglich ist würde ich gerne eine *.exe-Datei benutzen und nicht noch weitere Programme und Module nachinstallieren müssen. pip install pyserial" hört sich nach Linux an oder? viele Grüße Stefan
Stefan U. schrieb: >> Ich möchte auch möglichst nicht per Kommandozeile flashen. > > Vielleicht kann ich Dich doch noch bekehren. > > Mit dem Tool von Espressif habe ich immer wieder Probleme, unter Linux > und Windows auf mehreren Computern und mit unterschiedlichen Modulen. > > Aber das python Script esptool.py klappt super. > https://github.com/espressif/esptool > > Nach der Installation von Python 3.6 musst du mit dem Befehl "pip > install pyserial" noch ein Modul nachinstallieren. > > Mehr dazu hier: http://stefanfrings.de/esp8266/index.html Also ich schaue mir gerade die esptool-Geschichte an Unter https://github.com/espressif/esptool gibt es eine Menge Links und Download-Möglichkeiten. Wie oben schon mal geschrieben habe, bin ichHobbyprogrammierer Kenntnisse in Delphi, SPIN und PASM (Parallax-Propeller-Chip) Keine Ahnung von Python, keine Ahnung von GitHub, keine Ahnung von Linux usw. Wenn man mich "bekehren" will dann müsste man mir es schon genauer erklären. Wie installiere ich pyserial und wie installiere ich esptool? Wenn es mir jemand beschreiben möchte dann bitte nicht nur einen Link auf die Hauptseite sondern download-links zu exakt den Dateien die ich dafür brauche. Wenn das dann in einen Linux-Grundkurs für eine Woche ausartet vielleicht doch lieber einfach nur der Hinweis wo ich die passende init_data und die Adresse an die es geflasht werden muss. viele Grüße Stefan
Hast du schon irgend etwas an der NodeMCU angeschlossen ? Ich flashe immer ohne alles, nur USB-kabel... Und was hast du denn alles im CustomBuild drin (Module, Größe) ? Marc
Hallo Marc, ich habe nur das Board an USB angeschlossen. Größe der Firmware ist 697.744byte. Ich habe es auch mal mit einer Firmware in Größe 390kB probiert. Ging auch nicht.
Mir erscheint es sinnvoll zunächst mal einige Detailinfos zu bekommen. Wer könnte mir denn folgende Fragen beantworten: Wenn ich die Firmware-build-website https://nodemcu-build.com/ benutze um eine Firmware erstellen zu lassen. Welche SDK-Version wird denn dann benutzt um die Firmware zu erstellen? Wenn ich den Befehl print(node.flashsize()) benutze und das Board mit der Zahl "4194304" antwortet. Was bedeutet dann diese Zahl? viele Grüße Stefan
Stefan L. schrieb: > Welche SDK-Version wird denn dann benutzt um die Firmware zu erstellen? Espressif NON-OS SDK 2.0.0 Stefan L. schrieb: > Was bedeutet dann diese Zahl? Das du ein Board mit 4MB Flash hast. esptool.py gibts inzwischen auch als fertiges .exe für Windows. Das erspart einem die Installation von Python. https://github.com/marcelstoer/nodemcu-pyflasher/releases
:
Bearbeitet durch User
Hallo Manfred, vielen Dank für die Beantwortung. OK 4MB flash dann müsste doch jede noch so große Firmware draufpassen. Bleiben noch die Fragen welche init_data.bin für Espressif NON-OS SDK 2.0.0 an welche Adresse flashen? viele Grüße Stefan
Hallo Manfred, ich habe jetzt den NodeMCU-PyFlasher-1.0.0.exe ausprobiert. Flashen scheint zu funktionieren aber die Firmware funktioniert leider immer noch nicht. Kann mal jemand eine Firmware*.bin-Datei hier an ein posting anhängen, von der er weiß dass sie bei ihm funktioniert? Das verrückte ist ja dass es mit der INTERNAL://NODEMCU-Firmware immer wieder aufs neue funktioniert. Könnte es sein, dass die INTERNAL://NODEMCU auch immer wieder die falsche esp_init_data_default.bin draufschreibt? Was würde passieren wenn ich in Py-Flasher-exe "erase flash" aktiviere? Wird dann der komplette flash gelöscht= bootloader und esp_init_data_default.bin usw. ? oder nur der firmware-Bereich? viele Grüße Stefan Ludwig
Stefan L. schrieb: > Kann mal jemand eine Firmware*.bin-Datei hier an ein posting anhängen, > von der er weiß dass sie bei ihm funktioniert? OK, ich hänge dir mal die an, die gerade auf meinen Boards läuft. Die geht 100%ig. Stefan L. schrieb: > Was würde passieren wenn ich in Py-Flasher-exe "erase flash" aktiviere? Das mach ich eigentlich immer, weil dann wohl alles relevante neu geschrieben wird. Hast du auch alle Einstellungen im Pyflasher richtig gemacht?
:
Bearbeitet durch User
Hallo Manfred, vielen Dank für die FW. hm das ist jetzt auch seltsam. Bei 9600 baud keine Reaktion. Bei 115200 hat es sich einmal gemeldet und die installierten Module aufgelistet. Das heißt die neuere FW hat 115200 baud. Schon mal gut zu wissen Dann habe ich meine FW geflasht wieder nix. Dann habe ich wieder deine FW geflasht jetzt kommt nach dem Resettaster drücken folgendes: s$<0>lœ¾Œ#âoŒ€$ìb|‚䲟|"ŒpŒp~óoŸloNÜãìcpŒŽ$r$rdpònàƒ$Boã|„ŒŽ’Œb„óoNÎd ŒŽ<0>$`oNŽlorŽ›’nòr$pûNàrŒœÜâà15:11:14.713> cnâ|Œ„b„óoNÎ<0>l onl„l Ns’“oì{l`òNžàbƒolŒŒònoïŽlpònà{„œÜãàdBoã|$ì„c„ûoNîdŒ<0>$`onl„l Nr’Ÿîròl {’“oról ŒÂœìƒoì|rƒòn|äll$l ŒãrÛ$Œ{ÿ 15:11:14.713> Formatting file system. Please wait... ach kuck an während ich das posting schreibe klappt es jetzt doch 15:12:43.510> 15:12:43.563> NodeMCU custom build by frightanic.com 15:12:43.563> branch: master 15:12:43.563> commit: b96e31477ca1e207aa1c0cdc334539b1f7d3a7f0 15:12:43.563> SSL: false 15:12:43.563> modules: file,gpio,i2c,net,node,ow,pwm,spi,tmr,uart,wifi,ws2812 15:12:43.563> build built on: 2017-03-23 16:50 also nochmal meine FW draufflashen....
Ja, die Firmware benutzt standardmäßig 115200 Baud. Die unleserlichen Zeichen am Anfang sind (soweit ich weiß) eine Meldung des Bootloaders. Der sendet allerdings mit 74880 Baud; wenn du die lesen willst musst du ESPlorer entsprechend einstellen. Dann siehst du aber die Meldungen der Firmware nicht mehr. Warum die das so gemacht haben? Keine Ahnung, das wüsste ich selber gerne.
:
Bearbeitet durch User
Manfred F. schrieb: > Warum die das so gemacht haben? Der Bootloader ist im ROM des ESP und daher Bestandteil des Chips selbst. Und ROM heißt hier ROM nicht Flash. Er hat mit irgendeiner Firmware nichts zu tun. MfG Klaus
Hurra !!! jippiiie!!!! jetzt funktio-schnuggelst!!! Ich habe dann mal getestet eine möglichst große FW zusammenzustellen 704kB und auch das hat funktioniert. Es ist gut das es beides gibt einfach zu bedienende EXE-Dateien an denen man eben nicht viel einstellen kann und Tool-Chains bei denen jeder freaky Individualist alles so einstellen kann wie er es möchte. herzlichen Dank für eure Unterstützung!! Jetzt kann es mit dem Scripte schreiben losgehen. viele Grüße Stefan Ludwig
> "pip install pyserial" hört sich nach Linux an oder? Nein, das pip.exe Programm ist Bestandteil von Python und dient dazu, optionale Python Module zu installieren. > Wie installiere ich pyserial Mit dem oben genannten pip Befehl nach Installation von python. > und wie installiere ich esptool? Runterladen und auspacken, wird als ZIP Datei bereitgestellt. > bitte nicht nur einen Link auf die Hauptseite sondern download-links > zu exakt den Dateien die ich dafür brauche. https://github.com/espressif/esptool Der Download Button befindet sich genau auf dieser Seite. Rechts oben in grün hervorgehoben. > Wenn das dann in einen Linux-Grundkurs für eine Woche ausartet... Ich sag mal so: Manche Leute freuen sich darüber, dass dieses Script in allen gängigen Betriebsystemen funktioniert. Windows gehört dazu, ich nutze es unter Windows. Nur weil irgendwo in der Beschreibung das Wort "Linux" vorkommt, solltest du nicht gleich panisch werden. Ansonsten bist du nämlich ziemlich gearscht, weil beinahe alle Entwicklungstools für Mikrocontroller sogar primär unter Linux gebaut werden und dann erst in eine Windows Variante übersetzt werden. Das fängt schon beim gcc Compiler an.
Wobei man mit Linux schon deshalb strategisch besser fährt, weil man dann die Entwicklung verschiedener Controller-Plattformen in separate VMs auslagern kann. Um zu vermeiden, dass man den PC zumüllt und sich alle Sorten Treiber ins Gehege kommen. Und weil man solche VMs mühelos auf andere PCs und Laptops kopiert kriegt. Weshalb ich mir für den ESP kurzerhand eine Lubuntu-VM baute. Die ich dann als ein Bündel von Files dorthin mitnahm, wo das Teil effektiv eingesetzt und für den Betrieb optimiert wird. Das kann man mit Windows zwar auch, aber bei Linux in der VM ist es unabhängig von der Lizenz des Hosts legal und spart Platz.
Stefan U. schrieb: >> "pip install pyserial" hört sich nach Linux an oder? > > Nein, das pip.exe Programm ist Bestandteil von Python und dient dazu, > optionale Python Module zu installieren. > >> Wie installiere ich pyserial > > Mit dem oben genannten pip Befehl nach Installation von python. > >> und wie installiere ich esptool? > > Runterladen und auspacken, wird als ZIP Datei bereitgestellt. ...> > Ansonsten bist du nämlich ziemlich gearscht, weil beinahe alle > Entwicklungstools für Mikrocontroller sogar primär unter Linux gebaut > werden und dann erst in eine Windows Variante übersetzt werden. Das > fängt schon beim gcc Compiler an. Na da benutze ich die Ausnahme die die Regel bestätigt: der Parallax-Propeller-Chip. Seit 2006 auf dem Markt und damals schon 8 Prozessorkerne. Für den gab es zuerst nur das Propeller-Tool unter Windows. Um mal wieder an sich selbst zu erfahren wie das ist wenn man sich in etwas ungewohntes einarbeiten müsste kannst Du dir ja mal die Specs vom Propeller-Chip durchlesen. Das Konzept ist "ganz anders" Der Chip ist superflexibel 1-6x Uart oder 1-6x I2C oder 1-6x SPI oder onewire ganz wie es beliebt. Aber eben so "anders" dass es dir erst mal schwer fallen wird dich darauf einzulassen. Auch wenn ich die sage Superteil KEINERLEI Probleme mit Interruptprogrammierung. Und trotzdem funktioniert darauf alles supergut hier mal ein VGA-Demo: https://www.youtube.com/watch?v=6gEMKYnUADE viele Grüße Stefan Ludwig
Stefan L. schrieb: > Um mal wieder an sich selbst zu erfahren wie das ist wenn man sich in > etwas ungewohntes einarbeiten müsste kannst Du dir ja mal die Specs vom > Propeller-Chip durchlesen. Das Konzept ist "ganz anders" Yep. Gehört jedoch in die Kategorie "interessant, aber ...". Denn wenn der zu klein wird, dann stehst du dumm da. Deutlich besser sieht das bei XMOS aus. Leidlich verwandtes Konzept, aber geschickter gebaut und über Vernetzung skalierbar. Der Designer hatte seine Fehler schon bei den Transputern gemacht, und wusste daher, was nicht geht.
Den Propeller Chip hatte ich mal ausprobiert. Der ist wirklich sehr interessant - gerade weil er so exotisch iust,
Hi an alle, vielen herzlichen Dank für eure Hilfe. Jetzt habe ich ein neues Problem aktuelle Firmware selbst läuft aber das Webserver-Script läuft nur auf der alten Firmware. Och manno das ist doch zum Mäusemelken. Habe einen neuen Thread dafür aufgemacht Beitrag "ESP8266 nodeMCU Lua Demo-Webserver läuft nicht unter aktueller Firmware" viele Grüße Stefan
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.