Skip to content

Firmware einspielen

Marwe edited this page Jan 31, 2017 · 49 revisions

vorherige Seite: Bezugsquellen Einzelteile - nächste Seite: Zusammenbau der Komponenten (Schaltung)

USB2serial Treiber installieren

Unter dem gentutzen Betriebssystem muss der Treiber/das Modul für den usb2serial Chip installiert sein, der auf dem nodemcu verbaut ist, sonst kann der Rechner nicht mit dem ESP8266 kommunizieren: flashen, debug output ansehen etc. ist dann nicht möglich. Der Chipsatz ist bei NocdeMCUs normalerweise CH341: Treiberseite des Herstellers (chinesisch).

Firmware einspielen und Konfig löschen

Variante 1:

Variante 2:

  • Arduino IDE unter https://www.arduino.cc/en/Main/Software downloaden und installieren.

  • Erweiterung für ESP8266 installieren. Anleitung unter https://github.com/esp8266/Arduino.

  • Download der fertig übersetzten Firmware von https://www.madavi.de/sensor/update/data/latest.bin

  • Unter Windows die Kommandozeile, unter Linux/MacOS ein Terminal öffnen

  • Bitte im folgenden Schritt beachten:
    Je nach Version der Arduino-IDE kann sich die Version des ESPTools unterscheiden. In unserem Beispiel war Version 0.4.9 aktuell. Gegebenenfalls muss dann im Pfad die Versionsnummer angepasst werden.

  • Windows: %USERPROFILE%\AppData\Local\Arduino15\packages\esp8266\tools\esptool\0.4.9\esptool.exe -vv -cd nodemcu -cb 57600 -ca 0x00000 -cp COM11 -cf Pfad_zur_heruntergeladenen_Firmwaredatei (der Port hinter '-cp' muss gegebenenfalls angepasst werden)

  • Linux/MacOS: ~/Library/Arduino15/packages/esp8266/tools/esptool/0.4.9/esptool -vv -cd nodemcu -cb 57600 -ca 0x00000 -cp /dev/cu.wchusbserial1410 -cf Pfad_zur_heruntergeladenen_Firmwaredatei (der Port hinter '-cp' muss gegebenenfalls angepasst werden). Für Linux (MacOs ungetestet, evtl. mit Pfadanpassung) gibt es ein script in sensors-software/utils/flash/, das auch die Konfiguration löschen kann (s.u.).

  • Den passenden Port erfährt man zum Beispiel, indem man die NodeMCU am gewünschten Port anschließt und danach die Arduino IDE startet. Unter 'Werkzeuge -> Port' sind die verfügbaren Port zu sehen, meist ist recht einfach der Port mit der NodeMCU erkennbar. Die IDE danach wieder schließen, da sonst dieser Port blockiert ist.

Löschen der Konfiguration:

Variante 1:

Über die Arduino IDE lässt sich die gespeicherte Konfiguration mit dem Plugin ["ESP8266 Sketch data upload"] (https://github.com/esp8266/arduino-esp8266fs-plugin) löschen. Das Plugin nach Anleitung installieren. Beim Ausführen des Plugins kommt eine Meldung, dass das Daten-Verzeichnis leer ist, und ob man ein leeres SPIFFS Image hochladen möchte. Diese Meldung mit "Ja" beantworten. Der Upload der 3 MB kann dann etwas dauern. Wenn der Upload fertig ist, kann die NodeMCU neu gestartet werden.

Variante 2:

Das Vorgehen entspricht Variante 2 des Firmware einspielens. Als "Firmware"-Datei die Datei [ppd42ns-wificonfig-ppd-sds-dht.spiffs.bin] (https://github.com/opendata-stuttgart/sensors-software/raw/master/esp8266-arduino/ppd42ns-wificonfig-ppd-sds-dht/ppd42ns-wificonfig-ppd-sds-dht.spiffs.bin) herunterladen. Der Aufruf des esptool muss dann geändert werden bei "-ca 0x00000" auf "-ca 0x100000" und der Pfad zur "Firmware"-Datei auf den eben erfolgten Download. Implementiert im (Linux/bash-)script unter sensors-software/utils/flash/.

Seiten

Dokumentation

Protokolle

for more, see Protokolle

Clone this wiki locally