Hello World! Erstes Projekt mit dem ESP8266 NodeMCU V3 und der Arduino IDE Getting Started

Der ESP8266 ist ein hochintegrierter Chip, der speziell für die Bedürfnisse einer neuen vernetzten Welt entwickelt wurde. Er bietet eine vollständige und in sich geschlossene Wi-Fi-Netzwerklösung, die es ermöglicht, selbst ein WLAN-Netzwerk als Access Point bereit zu stellen oder einem Netzwerk als Teilnehmer beizutreten.
ESP8266 verfügt über leistungsstarke On-Board-Verarbeitungs- und Speichermöglichkeiten, welche über seine GPIOs mit den Sensoren und anderen anwendungsspezifischen Geräten zu interagieren.

Was ist der NodeMCU V3 ESP8266?

Bei dem NodeMCU V3 ESP8266 handelt es sich um einen 80 MHz ESP8266-Chip mit bis zu 4 MByte Flash-Speicher. Neben dem ESP-Modul mit integriertem WLAN ist auf dem Board auch die USB-Schnittstelle inclusive UART/USB-Wandler (CH340G ) vorhanden.

Die technischen Daten zum Board:

  • unterstützt WPA/WPA2
  • Chip: ESP-8266 (ESP12)
  • Prozessor:  Tensilica L106
    • Tacktrate: 80MHz/160MHz
    • Systemarchitektur: 32-bit
    • Flash: bis zu 4 MB
  • Unterstütze Protokolle:
    • (H) SPI
    • UART
    • I2C
    • I2S
    • IR Remote Control
    • PWM
    • GPIO
  • Logik-Level: 3,3 V
  • Stromaufnahme: < 10uA im Sleepmodus und bis zu 200mA unter Vollast bei 3V3
  • Versorgung über Micro-USB: 5V
  • Programmieranschluss: USB-mini
  • Programmierchip: CH340G
  • Größe: 5,5 x 3,1 x 1,2 cm
  • Gewicht: 42 g

Angeschlossen wird das Board über den micro-USB Anschluss mit dem PC.

Die Pinbelegung des NodeMCU ist dabei wie folgt:

Installation von Treibern und der Arduino IDE

Die Installation für den UART/USB-Wandler (CH340G) wurde bereits in diesem Artikel beschrieben.

Die Arduino IDE muss ebenso in der Aktuellen Version installiert werden. Link zur aktuellen Arduino IDE

Konfiguration der Arduino IDE

Von Haus aus wird der ESP8266 noch nicht von der IDE unterstütz, daher muss vorerst das Paket für jenen geladen werden.
Dies geschieht über Datei ->  Voreinstellungen in Zusätzliche Boardverwalter-URLs: folgende Zeile hinterlegt werden:

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

Das Fenster über OK  schließen und dann zum Board-Manager über: Werkzeuge -> Board -> Boardverwalter… navigieren und nach ESP8266 suchen:


Und das Paket “esp8266 by ESP8266 Community” installieren.

Nun kann das Board über: Werkzeuge -> Board -> NodeMCU 1.0 (ESP-12E Module) ausgewählt werden.

Im Anschluss muss noch der vom ESP-8266 belegte COM-Port im Gerätemanager nachgesehen und unter  Werkzeuge -> Port -> COM-xx eingestellt werden.


Vor dem Ersten Kompelieren die Arduino IDE einmal neu Starten!

Im Anschluss alle Board Einstellungen wie folgt vornehmen:

Das erste Programm “Hello World!” als blinkende LED auf dem ESP8266

Hierzu den Code in die Arduino IDE kopieren und auf den ESP8266 flashen.

#define LED D4            // LED auf NodeMCU an PIN GPIO2 (D4)

void setup() 
{ 
 pinMode(LED, OUTPUT);    // Setzen des PINs als Ausgang
} 
  
void loop() 
{ 
 digitalWrite(LED, HIGH); // LED ausschalten 
 delay(1000);             // warte für eine Sekunde 
 digitalWrite(LED, LOW);  // LED einnschalten 
 delay(1000);             // warte für eine Sekunde 
}

Nach dem erfolgreichen Upload des Codes blinkt die blaue LED auf dem ESP8266 im Sekundentakt.

Das zweite Programm “Hello World!” über die Serielle Schnittstelle (UART/USB)

Hierzu den Code in die Arduino IDE kopieren und auf den ESP8266 flashen und im Anschluss den Seriellen Monitor über Werkzeuge -> Serieller Monitor öffnen.

#define LED    D4                 // LED auf NodeMCU an PIN GPIO2 (D4).

void setup()  
 {  
  Serial.begin(115200);           // Seriellen Port initialisieren 
  delay(10);
  pinMode(LED, OUTPUT);           // Setzen des PINs als Ausgang
}  
  
void loop() {  
  digitalWrite(LED, HIGH);        
  delay(1000);                    
  digitalWrite(LED, LOW);         
  delay(1000);                    
  Serial.println("Hello World!");
}

Im seriellen Monitor muss die Baud-Rate von 115200 Baud gewählt werden: