ESP8266 LED Server (Teil 1)

ESP8266 LED

Was macht dieses Projekt?

  • Der ESP8266 verbindet sich mit deinem WLAN
  • Er startet einen kleinen Webserver
  • Im Browser erscheint eine Seite mit einem großen Button
  • Beim Drücken des Buttons wird eine LED ein- oder ausgeschaltet
  • Die IP-Adresse wird im Serial Monitor angezeigt

Was wird dafür benötigt?

  • ESP8266 (z. B. NodeMCU)
  • 1 LED
  • 1 Widerstand (220–330 Ohm)
  • Steckbrett + Kabel
  • Arduino IDE

Schritt für Schritt Anleitung

ESP8266 LED Server

1. LED und Widerstand anschließen

  • LED langes Bein → D3
  • LED kurzes Bein → Widerstand → GND

Hinweis: D3 ist GPIO0. Dieser Pin darf beim Start nicht dauerhaft auf GND liegen.

2. Sketch hochladen

  • Arduino IDE öffnen
  • Sketch einfügen
C++
#include <ESP8266WiFi.h>
#include <ESP8266WebServer.h>

// WLAN Daten eintragen
const char* ssid = "YOUR-SSID";
const char* password = "YOUR-PASSWORD";

ESP8266WebServer server(80);

const int led = D3;   // D3 = GPIO0
bool ledAn = false;

void seite() {
  String html = "<html><body style='text-align:center; margin-top:100px;'>";
  html += "<h1>LED Steuerung</h1>";
  html += "<a href='/klick'>";
  html += "<button style='font-size:50px; padding:40px;'>PRESS ME</button>";
  html += "</a>";
  html += "</body></html>";

  server.send(200, "text/html", html);
}

void klick() {
  ledAn = !ledAn;                 // Zustand wechseln
  digitalWrite(led, ledAn);       // LED setzen
  server.sendHeader("Location","/");
  server.send(303);
}

void setup() {
  Serial.begin(115200);
  pinMode(led, OUTPUT);

  WiFi.begin(ssid, password);
  Serial.print("Verbinde...");

  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }

  Serial.println("\nFertig!");
  Serial.print("IP-Adresse: ");
  Serial.println(WiFi.localIP());

  server.on("/", seite);
  server.on("/klick", klick);
  server.begin();
}

void loop() {
  server.handleClient();
}
  • Deine SSID und dein Passwort eintragen.
  • Auf den Upload Button klicken
  • Warten, bis der Upload fertig ist.

3. IP Adresse herausfinden

  • Serial Monitor öffnen
  • Baudrate auf 115200 stellen
  • Warten, bis „IP-Adresse:“ angezeigt wird
  • Diese IP-Adresse notieren

4. Webserver testen

  • Browser öffnen (PC oder Smartphone im selben WLAN)
  • IP-Adresse in die Adresszeile eingeben
  • Die Webseite mit dem großen Button erscheint
  • Button drücken → LED schaltet ein oder aus

Weiterführende Informationen zum ESP8266 LED Webserver Projekt

Dieses ESP8266 LED Webserver Projekt zeigt auf einfache Weise, wie ein Mikrocontroller mit integriertem WLAN zu einem eigenständigen Netzwerkgerät wird. Durch die Kombination aus Hardware, Programmierung und Webtechnologie entsteht ein vollständiges IoT-System, das ohne externe Cloud-Dienste funktioniert. Genau diese Unabhängigkeit macht den Reiz solcher Projekte aus.

Der verwendete WLAN-Mikrocontroller stammt vom Hersteller Espressif Systems und kombiniert Prozessor, WLAN-Modul, Speicher und digitale Ein- und Ausgänge in einem einzigen Chip. Dadurch lassen sich IoT-Projekte besonders kompakt und kostengünstig umsetzen. Gerade für Einsteiger in die Mikrocontroller-Programmierung ist der ESP8266 ideal, da er mit der Arduino IDE leicht programmierbar ist und eine große Community sowie zahlreiche Bibliotheken bietet.

Technisch basiert dieses Projekt auf einem einfachen HTTP-Webserver, der direkt auf dem Mikrocontroller läuft. Sobald die IP-Adresse im Browser aufgerufen wird, liefert der ESP8266 eine HTML-Seite aus. Wird der Button betätigt, sendet der Browser eine HTTP-Anfrage zurück an das Gerät. Der Mikrocontroller verarbeitet diese Anfrage und schaltet den entsprechenden GPIO-Pin. Dieses Prinzip bildet die Grundlage vieler moderner Smart-Home- und Automatisierungslösungen.

Ein großer Vorteil dieses LED Webserver Projekts ist die lokale Steuerung im eigenen Netzwerk. Es ist keine Internetverbindung notwendig und es werden keine externen Server verwendet. Dadurch bleibt das System übersichtlich, schnell und datenschutzfreundlich. Erst wenn eine Portfreigabe im Router eingerichtet wird, wäre ein Zugriff von außen möglich.

Das Projekt eignet sich hervorragend als Einstieg in folgende Themenbereiche:

  • ESP8266 Programmierung mit der Arduino IDE
  • Aufbau eines Webservers auf einem Mikrocontroller
  • WLAN-Kommunikation im IoT-Bereich
  • Steuerung von GPIO-Pins über HTTP
  • Grundlagen der Heimautomatisierung

Von hier aus lassen sich viele Erweiterungen realisieren. Statt einer LED kann ein Relais-Modul angeschlossen werden, um Lampen oder andere Geräte zu schalten. Ebenso können Sensoren integriert werden, deren Messwerte über die Webseite angezeigt werden. Mit etwas zusätzlichem Code lassen sich Statusanzeigen, moderne Benutzeroberflächen oder sogar AJAX-basierte Steuerungen ohne Seiten-Reload umsetzen.

Wer sich intensiver mit Mikrocontroller-Projekten beschäftigen möchte, kann dieses einfache WLAN LED Projekt als Grundlage für komplexere Anwendungen nutzen – beispielsweise MQTT-Kommunikation, Home-Assistant-Integration oder OTA-Updates. Damit entwickelt sich aus einer simplen LED-Steuerung schnell ein vollständiges IoT-System.

Dieses Projekt zeigt eindrucksvoll, wie einfach sich mit einem ESP8266, wenigen Bauteilen und etwas Code ein funktionierender WLAN-Webserver realisieren lässt mit dem sich eine LED ansteuern lässt. Es verbindet Embedded-Programmierung, Netzwerktechnik und Webentwicklung in einem leicht verständlichen Praxisbeispiel und bietet einen idealen Einstieg in die Welt der vernetzten Mikrocontroller.

FAQ

Brauche ich Internet dafür?

Nein. Das Projekt funktioniert komplett im eigenen Heimnetzwerk. Eine Internetverbindung ist nicht erforderlich.

Kann ich das auch mit dem Smartphone steuern?

Ja. Solange sich dein Smartphone im selben WLAN befindet, kannst du die IP-Adresse im Browser öffnen und die LED steuern.

Warum wird ein Widerstand bei der LED benötigt?

Der Widerstand begrenzt den Strom durch die LED. Ohne Widerstand kann die LED oder der Mikrocontroller beschädigt werden.

Wie sicher ist dieses Projekt?

Im Standardzustand ist es nur im lokalen Netzwerk erreichbar. Ohne Portfreigabe im Router ist kein Zugriff von außen möglich.


Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert