A – Das NodeMCU

Das NodeMCU mit integriertem ESP8266-Modul in Betrieb nehmen

Material : Arduino, NodeMCU , Kabel (Materialbeschaffung www.funduinoshop.com)

Das NodeMCU Entwicklerboard ist ein kleiner, leistungsstarker Mikrocontroller. Es verfügt ähnlich wie ein Arduino-Board über GPIOs (general purpose input/output), also digitale Ein- und Ausgänge und zusätzlich ist ein ESP8266-Modul integriert. Über dieses Modul kann eine Verbindung in WLAN-Netze hergestellt werden.

Beim ersten Blick auf das NodeMCU fällt auf, dass die Pinbelegung kaum von der eines Funduino UNO/MEGA R3 abweicht. Wir finden die Digitalen Anschlüsse D0 bis D10, GND, Pins für die Versorgungsspannung, separate RX/TX Pins und sogar Pins zum Ansteuern des I²C Busses.

Da die Bezeichnung der digitalen Pins (D0 bis D10) jedoch nicht mit denen der internen ESP8266 GPIOs übereinstimmt (D1 entspricht nicht GPIO1, D2 nicht GPIO2, …), müssen wir unbedingt die nachfolgende Pinbelegung berücksichtigen.

 Digitale Pins des NodeMCUGPIO Belegung
 D0 / LED_BUILTINGPIO16
D1    GPIO5
D2GPIO4
D3GPIO0
D4GPIO2
D5GPIO14
D6GPIO12
D7GPIO13
D8GPIO15
D9GPIO3
D10GPIO1

Doch wie kann ich das Entwicklerboard programmieren?

Wir beginnen zuerst mit der Implementierung der ESP8266 Bibliothek.

Die Installation der Bibliothek und die Auswahl des NodeMCU erfolgt in fünf einfachen Schritten.

Schritt 1 – Den Reiter „Datei“ anklicken und den Unterpunkt „Voreinstellungen“ auswählen.

Es öffnet sich ein neuer Dialog.

Schritt 2 – Die nachfolgende URL in das weiße Eingabefeld eintragen und den Dialog mit „OK“ schließen.

 http://arduino.esp8266.com/stable/package_esp8266com_index.json

Schritt 3 – Den Reiter „Werkzeuge“ anklicken, den Unterpunkt „Board: Platzhalter“ auswählen und anschließend die Boardverwaltung öffnen

Schritt 4 – Wir geben nun „ESP8266“ in die Suchleiste ein. Nun können wir die Bibliothek installieren.

Schritt 5 – Den Reiter „Werkzeuge“ anklicken und im Unterpunkt „Board: Platzhalter“ das „NodeMCU 0.9 (ESP-12 Module)“ auswählen.

Nachdem wir die Bibliothek implementiert und unser NodeMCU konfiguriert haben, können wir es über die Arduino IDE programmieren.
Wir beginnen mit einer relativ simplen Aufgabe. Die auf dem Entwicklerboard verbaute LED soll in einem Intervall von 1 Sekunde blinken.

Der Sketch : 

int LED = D0;          

void setup() {
 pinMode(LED, OUTPUT); 
 }

void loop() {
 digitalWrite(LED, LOW); 
 delay(1000); 
 digitalWrite(LED, HIGH); 
 delay(1000);
}

Dem fortgeschrittenen Bastler ist eventuell direkt ein kleiner Unterschied aufgefallen.

 int LED = D0

Anstatt der herkömmlichen Definition der Variablen (z.B. „int LED = 6;“ für „LED liegt an Pin6 an“) haben wir hier die Pinbezeichnung des NodeMCU verwendet. Da der Pin D0 aber auch dem GPIO16 (siehe Tabelle) entspricht, hätten wir auch die Variable „int LED = 16;“ verwenden können.