ESP8266 / NodeMCU: Lösung für “ets Jan 8 2013,rst cause:4, boot mode:(3,6)”
Wenn man Arduino-Code auf einen ESP Chip übertragen möchte (den ESP8266, einen NodeMCU oder ein Wemos Board) kann es zu Problemen kommen: Die auf dem Board angegeben Pin-Nummern (D1, D2, D3 etc.) passen nicht zu den GPIO Pins des ESP-Chips. Möchte man mit “pinMode(D5,OUTPUT);” auf den D5-Pin (oder einen anderen Pin) zugreifen, meldet der ESP nach dem Kompilieren und Hochladen einen Fehler ähnlich wie dieser:
ets Jan 8 2013,rst cause:4, boot mode:(3,6) wdt reset load 0x4010f000, len 1384, room 16 tail 8 chksum 0x2d csum 0x2d v09f0c112
Das lässt sich umgehen, in dem man vorher die Pin-Belegung als Konstanten festlegt: Anschließend kann man problemlos auf die aufgedruckte Pin-Belegung zugreifen und die Ports mit dem Namen nutzen, der auch neben dem Pin aufgedruckt ist. Zum Zuweisen der Pins fügt man diesen Code zu Beginn der Setup-Routine ein:
static const uint8_t D0 = 16; static const uint8_t D1 = 5; static const uint8_t D2 = 4; static const uint8_t D3 = 0; static const uint8_t D4 = 2; static const uint8_t D5 = 14; static const uint8_t D6 = 12; static const uint8_t D7 = 13; static const uint8_t D8 = 15; static const uint8_t D9 = 3; static const uint8_t D10 = 1;
Anschließend kann man auf die Pins D0, D1, D2 bis D10 zugreifen: Dazu werden die benötigten Pins ebenfalls im Setup definiert und können anschließend im Loop angesprochen werden:
void setup() { static const uint8_t D0 = 16; static const uint8_t D1 = 5; static const uint8_t D2 = 4; static const uint8_t D3 = 0; static const uint8_t D4 = 2; static const uint8_t D5 = 14; static const uint8_t D6 = 12; static const uint8_t D7 = 13; static const uint8_t D8 = 15; static const uint8_t D9 = 3; static const uint8_t D10 = 1; pinMode(D5,OUTPUT); pinMode(D8,INPUT); pinMode(D9,INPUT); } void loop() { digitalWrite(D5, LOW); }
- Secure-Boot : Massenhaft-Startverbote-fuer-Bootloader
- reboot and select proper boot device or insert boot media in selected boot devic
- reboot and select proper boot device or insert boot media in selected boot devic
Erstenmal wünsche ich euch ein frohes Neues! Nun zu meinem Problem. Ich habe einem freu...
- reboot and select proper boot device or insert boot media in selected boot devic
Hallo liebe Community,ich hab mein eigenen PC zusammengebaut und er funktionierte auch ;...
- reboot and select proper boot device or insert boot media in selected boot devic
- datenschutz (41x gelesen)
- windows-beschleunigen (40x gelesen)
- windows-defragmentieren-und-aufraeumen (35x gelesen)
- windows-geschwindigkeits-einstellungen (33x gelesen)
- pc-einsteigerkurs (29x gelesen)
Mehr Tipps zu ESP8266 / NodeMCU: Lösung für R...
-
Snipping Tool stürzt ab und hängt sich auf – das hilft!
Wenn Microsofts Screenshot Programm, das Snipping Tool, regelmäßig abstürzt oder sich aufhängt, kann die Windows Reparatur-Funktion helfen. Wie man das Snipping Tool damit repariert, zeigen...
-
Raspberry Pi: GPIO Pins mit Python steuern
Mit der Programmiersprache lassen sich die GPIO Pins des Raspberry Pi ganz einfach steuern und damit zum Beispiel eine LED ein oder ausschalten oder blinken...
-
Snipping Tool fehlt: So macht man Windows Screenshots jetzt!
Mit dem Oktober Update 2018 gibt es auch das beliebte Snipping Tool für Windows nicht mehr: Damit ließen sich schnell und einfach Screenshots (Fotos vom...
-
Unterschied Arduino / ESP und Raspberry Pi!
In unserem Smart Home Forum kommt immer wieder einmal die Frage nach den Unterschieden von Arduino und Raspberry Pi auf: Mit beiden kann man einige...
-
ESP, NodeMCU & Wemos Board mit der Arduino IDE programmieren
Die Arduino IDE ist eine einfache und praktische Oberfläche, um verschiedene Entwickler-Boards schnell und einfach zu programmieren und den Sketch dann auf den Chip zu...
-
ESP / NodeMCU: Befehle und Daten ganz einfach per WLAN an FHEM senden
Der ESP Chip ist ein kleiner Funkchip, mit dem sich per WiFi / WLAN kommunizieren lässt: Auf einem NodeMCU oder Wemos Board lässt er sich...
ESP8266 / NodeMCU: Lösung für "ets Jan 8 2013,rst cause:4, boot mode:(3,6)"