Du lernst, wie du deine Lego-Modelle mit einzelnen LEDs oder adressierbaren RGB-LED-Streifen ausstattest und per Arduino steuerst. Dieser Artikel zeigt dir Verdrahtung, PWM-Dimmung und Animationen für realistische Lichteffekte von Gebäuden, Fahrzeugen oder Raumschiffen.
Beispiele für die Anwendung:
- Fensterbeleuchtung in Lego-Häusern mit warmweißen LEDs und Dämmerungssimulation
- Blinkende Warn- und Signallichter in Lego-Feuerwehrautos oder Polizeifahrzeugen
- RGB-Beleuchtung für Lego-Raumschiffe mit Farbwechsel-Animationen
- Straßenlaternen in Lego-Cities mit automatischer Tag/Nacht-Schaltung
- Leuchtende Cockpit-Instrumente in Lego-Technic-Modellen
Die Beleuchtung von Lego-Modellen verbindet Modellbau mit Elektronik. Du kannst Standard-LEDs (3 mm oder 5 mm) für punktuelle Beleuchtung oder adressierbare WS2812B-LEDs für RGB-Effekte verwenden. Das Arduino-Board steuert die LEDs über digitale Pins (an/aus) oder PWM-Pins (gedimmt). Bei mehreren LEDs empfehlen sich Transistoren (z. B. BC547) oder MOSFET (z. B. IRLZ34N) zur Lastverstärkung. Widerstände begrenzen den LED-Strom auf sichere 10–20 mA.
Typische Stolpersteine: Zu enge Verkabelung in kleinen Lego-Steinen, zu hohe Ströme ohne Vorwiderstand (LEDs brennen durch) und falsche Polung. Plane die Kabelführung vor dem Zusammenbau und verwende dünne Lackdrähte (0,1–0,2 mm) oder flache Silikon-Litzen. Für größere Installationen mit vielen LEDs nutzt du externe 5-V-Netzteile und gemeinsame Masse mit dem Mikrocontroller.
Teileliste (Bill of Materials):
- Mikrocontroller: Arduino UNO/Nano
- LEDs: 3 mm oder 5 mm LEDs (warmweiß, rot, blau, grün), oder WS2812B-Strip (individuell adressierbar)
- Vorwiderstände: 220–330 Ω für 5 V (pro LED bei Standard-LEDs)
- Transistoren (optional): BC547 (NPN) für mehrere LEDs oder MOSFET IRLZ34N für LED-Strips
- Verbindungskabel: Dünne Lackdrähte (0,1–0,2 mm Durchmesser) oder 26 AWG Silikon-Litze
- Stromversorgung: USB-Kabel (für wenige LEDs) oder 5-V-Netzteil (2–3 A für LED-Strips)
- Breadboard & Jumper-Kabel: Für Prototyping und Tests
Pinout & Verdrahtung:
Beachte: Standard-LEDs benötigen Vorwiderstände (220–330 Ω). WS2812B-LEDs benötigen einen Widerstand vor dem Data-In (330 – 500 Ω).
Standard-LED (mit Vorwiderstand):

Bibliotheken & Installation:
Für Standard-LEDs sind keine Bibliotheken nötig (PWM via analogWrite()). Für adressierbare WS2812B-LEDs:
- FastLED (empfohlen): Im Arduino Library Manager nach „FastLED“ suchen und installieren.
- Adafruit NeoPixel: Alternative, im Library Manager nach „Adafruit NeoPixel“ suchen. Einfachere API, aber weniger Effekte.
Verwendung mit Arduino (UNO/Nano):
Hier ein einfaches Beispiel für eine dimmbare LED an Pin D9. Nutze PWM, um die Helligkeit stufenlos zu regeln – perfekt für sanfte Fensterbeleuchtung.
const int ledPin = 9; // PWM-fähiger Pin für LED
void setup() {
pinMode(ledPin, OUTPUT); // LED-Pin als Ausgang konfigurieren
Serial.begin(115200); // Serielle Kommunikation starten
}
void loop() {
for (int brightness = 0; brightness <= 255; brightness++) { // Helligkeit hochfahren
analogWrite(ledPin, brightness); // PWM-Wert setzen (0-255)
delay(10); // Kurze Pause für sanften Übergang
}
for (int brightness = 255; brightness >= 0; brightness--) { // Helligkeit runterfahren
analogWrite(ledPin, brightness); // PWM-Wert setzen
delay(10); // Kurze Pause
}
Serial.println("Fade-Zyklus abgeschlossen"); // Info im Serial Monitor
}
Serieller Monitor: Stelle 115200 Baud ein, um die Meldungen zu sehen.
Troubleshooting:
- LED leuchtet nicht: Polung prüfen (langes Bein = Anode/+, kurzes = Kathode/-). LED kann durchgebrannt sein – mit Multimeter im Dioden-Modus testen.
- LED zu dunkel oder flackert: Vorwiderstand zu groß (unter 220 Ω testen, aber nicht unter 100 Ω bei 5 V). Bei WS2812B: Externe 5-V-Versorgung nutzen, USB-Strom reicht ab 5–10 LEDs nicht.
- WS2812B zeigt falsche Farben: Data-Leitung zu lang oder ohne Level-Shifter bei 3,3-V-Boards. Füge 330–470 Ω Widerstand zwischen Pin und Data-In ein. Gemeinsame Masse zwischen Board und Netzteil prüfen.
- LEDs leuchten nach Programmende weiter: Normal bei WS2812B (speichern Zustand). Sende explizit „alle aus“-Befehl im Code (z. B.
FastLED.clear(); FastLED.show();). - ESP8266 bootet nicht mit WS2812B an GPIO2 (D4): GPIO2 muss beim Boot HIGH sein. Nutze GPIO5 (D1) oder füge Pull-Up-Widerstand (4,7 kΩ) zwischen GPIO2 und 3,3 V ein.
- Arduino UNO stürzt bei vielen LEDs ab: Stromversorgung über USB reicht nicht. Nutze externes 5-V-Netzteil (2–3 A) mit gemeinsamer Masse zum Arduino.
- FastLED-Bibliothek kompiliert nicht: Stelle sicher, dass die neueste Version installiert ist (Library Manager → Updates prüfen). Bei ESP8266: Board-Paket Version 3.0+ verwenden.
- Kabel brechen in Lego-Modellen: Verwende flexible Silikon-Litze statt Kupferlackdraht für bewegliche Teile. Zugentlastung durch Heißkleber oder kleine Kabelbinder an kritischen Stellen.
Projektideen:
- Lego-Stadtbeleuchtung mit Tag/Nacht-Rhythmus: Fotowiderstand (LDR) misst Umgebungshelligkeit, LEDs schalten automatisch bei Dämmerung ein. Perfekt für realistische Dioramen.
- Feuerwehrauto mit Blaulicht-Animation: Zwei blaue LEDs blinken abwechselnd mit
delay()unddigitalWrite(). Erweitere mit Summer für Sirenenton. - Raumschiff mit RGB-Triebwerksbeleuchtung: WS2812B-Strip zeigt Farbverläufe von Blau zu Weiß bei „Beschleunigung“. Steuere per Taster oder Potentiometer.
- Leuchtturm mit rotierendem Lichtkegel: Eine helle weiße LED auf Servomotor montiert, dreht sich langsam. Servo + LED kombiniert für realistische Küstenszene.
- Lego-Eisenbahn mit Signallichtern: Rote/grüne LEDs an Gleissegmenten, schaltbar per Taster oder Reed-Schalter bei Zugdurchfahrt. Simuliert echte Bahnsignale.
- Haunted House mit flackernden LEDs:
random()-Funktion erzeugt unregelmäßige Helligkeitswerte für Kerzen- oder Geistereffekte. Kombiniere mit kleinem Lautsprecher für Soundeffekte. - Lego-Apollo-Rakete mit Countdown-Beleuchtung: LEDs leuchten nacheinander auf bis zum „Start“, dann alle gleichzeitig hell. Kombiniere mit 7-Segment-Display für Countdown-Anzeige.
Weiterführend/Alternativen:
- WS2811 vs. WS2812B: WS2811 ist ein externer Chip (billiger für große Installationen), WS2812B ist integriert (einfacher zu verbauen). Beide mit FastLED kompatibel.
- APA102 (DotStar): Höhere Datenrate als WS2812B, weniger anfällig für Timing-Probleme. Benötigt zwei Pins (Data + Clock), aber kein präzises Timing. Besser für lange Strips (>100 LEDs).
- Einzelne RGB-LEDs (Common Cathode): Benötigen drei PWM-Pins pro LED, aber kein spezielles Protokoll. Gut für 1–5 RGB-LEDs ohne Bibliotheken.
- LED-Matrix (z. B. 8×8 MAX7219): Für Text/Animationen in Lego-Gebäuden. Gesteuert via SPI, nur 3 Pins nötig. Bibliothek: „MD_MAX72XX“ oder „LedControl“.
- Externe LED-Controller (z. B. PCA9685): 16-Kanal-PWM-Controller über I2C, spart Pins am Mikrocontroller. Perfekt für 10+ einzelne LEDs mit individueller Dimmung.
- Fiber-Optik-Kabel in Lego: Dünne Lichtleiter (0,25–0,75 mm) führen Licht von einer zentralen LED zu mehreren Stellen. Kein Verkabelungsaufwand in engen Bereichen, aber nur weiße Beleuchtung.
Wenn dir das Projekt gefallen hat und du von weiteren interessanten Projekten inspiriert werden willst, sieh dir doch mal mein neues E-Book »Arduino Projekte Volume 1« an!
- Die beliebtesten Arduino-Projekte von StartHardware
- Inklusive Schaltplan, Beschreibung und Code
- Arduino-Schnellstart-Kapitel
- Kompakter Programmierkurs


