NodeMCU ESP8266

Das SoC (System on Chip) NodeMCU mit Tensilica LX106 CPU und WLAN gemäß 802.11 b/g/n:

Heute sind eine Reihe von verschiedenen Klein- und Kleinstrechner für den neudeutsch "Maker", also den normaler Bastler über den Elektronikhandel erhältlich. Sei es die bekannten Systeme wie Raspberry PI oder eben der Arduino. Oder aber auch noch kleiner, die sogenannten SoCs, also "System on Chips". Hierzu zählen auch der ESP8266 oder sein Nachfolger, der ESP32. Diese sind keine herkömmlichen Computer, sondern Mikrocontroller-Bausteine, die mit einer für eine bestimmte Aufgabe angepasste Firmware geflasht werden. Diese kommunizieren via WLAN mit einem Hostsystem. Somit handelt es sich um Komponenten aus dem Kreis der IoT, dem Internet der Dinge. Wir haben 2019 eine Gelegenheit nutzen können, um diese Teile einmal näher live anschauen zu können:

Im Rahmen eines Maker-Events im Frühjahr 2019 haben wir uns dort mit dem NodeMCU beschäftigt und dazu auch die Arduino-Entwicklungsumgebung installiert. Wir waren an diesem Tag von diesem SoC sehr angetan, sodass wir in Folge uns zwei dieser Module im Nachgang dieser Veranstaltung besorgt haben. Diese Module besitzen eine WLAN-Schnittstelle und werden über ein normales USB-Kabel mit dem Notebook verbunden. Diese Systeme besitzen kein eigenes Betriebssystem, sondern die programmierten Anwendungen werden dort als Firmware geflasht und stehen somit auch nach Ausschalten der Versorgungsspannung permanent beim nächsten Einschalten wieder zur Verfügung. Wir haben uns zwei Beispiele mit integriertem Webserver aus dem Netz heruntergeladen. Der entsprechende Link finden Sie unten auf dieser Seite. Im folgenden Bild links können wir über WLAN und der Webinterface-Schnittstelle am Notebook zwei LEDs unabhängig voneinander ein- und ausschalten. Anstelle der LEDs kann man auch z.B. Relais einsetzen, um größere Lasten schalten zu können. Rechts im Bild haben wir den SoC mit einem Temperatur-Sensor DHT11 versehen. Dort kann man die Temperatur und Luftfeuchte ebenfalls drahtlos auf seinem Notebook anzeigen lassen. Mit einer angeschlossenen Powerbank kann man somit ganz einfach autark z.B. im Keller die Temperatur und Feuchte messen und diese z.B. einige Stockwerke höher drahtlos im Wohnzimmer temporär abfragen und anzeigen lassen.    

 

Zwei NodeMC, Temperatur und Schalter

NodeMCUs: Links das Modul zum Schalten der zwei LEDs; rechts zur Erfassung der Temperatur und Feuchte.
Die Datenübertragung erfolgt in beiden Fällen via WLAN. Der USB-Anschluss wird in diesem Fall nur für die
Stromversorgung benötigt.
 

Einige technische Daten von den NodeMCU-Modulen:

  • Spannung: 5V USB, intern 3.3V.
  • Wi-Fi Direct (P2P), Soft-AP
  • Stromverbrauch: 10uA~170mA
  • Adressierbarer Flash Speicher: 16M B max (512K normal).
  • Integrierter TCP/IP protocol stack
  • Prozessor: Tensilica L106 32-bit.
  • Prozessor Geschwindigkeit: 80~160MHz.
  • RAM: 32K + 80K.
  • GPIOs: 17 (mit anderen Funktionen gemultiplexed).
  • Analog nach Digital: 1 Eingang mit 1024 Einzelschritt Auflösung.
  • +19.5dBm Ausgangsleistung power in 802.11b mode
  • 802.11 support: b/g/n.
  • Maximum concurrent TCP connections: 5

(Angaben ohne Gewähr)

 

Für die Programmierung der NodeMCU Bausteine kommt die Entwicklungsumgebung für den Arduino mit einer Anpassung für diese Module zum Einsatz.

 Weboberfläche Bedienung Schalter

 Webinterface für das Schalten der LEDs:

Tastflächen mit GPIO Status Rückmeldung. Gut zu bedienen mit dem Touchdisplay unseres MiniPCs.

 

 

 

 

 

 

Weboberfläche Anzeige Temperatur und Feuchte

 

Webinterface für die Temperatur und Feuchte:

Hier eine Anwendung mit Webinterface und mit dem Temperatur-Sensor DHT 11.

 

 

 

 

 

 

Touchdisplay MiniPC Schalterbedienung

 

RasPI MiniPC:

Hier nun als Beispiel die Anzeige auf unserem RasPI MiniPC.

 

 

 

 

Zusammenfassung:

Diese Module zeigen exemplarisch einen Teil der Möglichkeiten, die heute das sogn. IoT, also das Internet der Dinge zu leisten vermag. Da diese Module sehr klein sind und auch nur wenig Speichermöglichkeiten bieten und somit auch der Einsatz von Sicherheitsprotokollen beschränkt ist, muss der Sicherheitsaspekt besonders betrachtet werden. Daher ist der Betrieb nur in einem eigenen, abgeschottetem Intranet ohne Anschluss ans Internet zu empfehlen. Zum Experimentieren und Einarbeiten in die Thematik bieten diese Module jedoch für den Einstieg eine einfache und preiswerte Möglichkeit.

 

Die beiden NodeMCUs im aktiven Zustand
Die beiden NodeMCUs auf einem Demonstrationsboard mit Powerbank autark montiert.

 

Links:

Programmbeispiele: http://www.esp8266-server.de

Entwicklungsumgebung Arduino und dann dort auf ESP8266 umstellen:  https://www.arduino.cc/en/Main/Software

Datenblatt: https://cdn-reichelt.de/.../DEBO_JT_ESP8266_DB-DE.pdf

Beschreibungen: https://lastminuteengineers.com/esp8266-nodemcu-arduino-tutorial/