WS2812B/NeoPixel LED Strip Zweck
Adressierbare RGB-LED-Streifen für Ambiente-Beleuchtung, Effekte, Benachrichtigungen oder dekorative Anwendungen. Anschluss Stromversorgung
⚠️ Wichtig: LED-Strips brauchen viel Strom!
Pro LED: ~60mA bei voller Helligkeit (Weiß)
30 LEDs: bis zu 1.8A bei 5V
Ab 10+ LEDs...
Code-Vorschau
Haupt-Konfiguration
Tipp: Markieren & ⌘/Ctrl + C zum Kopieren
configuration.yaml
1# WS2812B/NeoPixel LED Strip2# Adressierbare RGB LED-Streifen Steuerung3light:4-platform: neopixelbus
5type: GRB # Farbreihenfolge - anpassen falls Farben falsch (RGB, GRB, GRBW)6variant: WS2812 # WS2812, WS2812X, WS2813, SK6812, etc.7pin: GPIO5
8num_leds:30# Anzahl LEDs in deinem Strip9name:"${friendly_name} LED Strip"10id: led_strip
11default_transition_length: 1s
12gamma_correct:2.8# Bessere Farbdarstellung13color_correct:[30%, 30%, 30%]# Helligkeit reduzieren, pro Kanal anpassen14restore_mode: RESTORE_DEFAULT_OFF
15effects:16# Basis-Effekte17-random:18name:"Random"19transition_length: 5s
20update_interval: 7s
21-strobe:22name:"Strobe"23colors:24-state:true25brightness: 100%
26red: 100%
27green: 100%
28blue: 100%
29duration: 500ms
30-state:false31duration: 250ms
32-flicker:33name:"Flicker"34alpha: 95%
35intensity: 1.5%
3637# Regenbogen-Effekte38-rainbow:39name:"Rainbow"40speed:1041width:5042-pulse:43name:"Pulse"44transition_length: 1s
45update_interval: 1s
46min_brightness: 0%
47max_brightness: 100%
4849# Erweiterte Effekte50-lambda:51name:"Fire"52update_interval: 50ms
53lambda:|-54 static int pos = 0;
55 for (int i = 0; i < it.size(); i++) {56 int heat = random(50) + random(80);
57 int r = heat;
58 int g = heat / 3;
59 int b = 0;
60 it[i] = Color(r, g, b);
61}6263# Stromverbrauch-Überwachung (optional - für Sicherheit)64sensor:65-platform: template
66name:"${friendly_name} LED Power Usage"67id: led_power_usage
68unit_of_measurement:"W"69accuracy_decimals:170device_class: power
71state_class: measurement
72update_interval: 30s
73lambda:|-74// Grobe Schätzung: ~60mA pro LED bei vollem Weiß
75 float current_per_led = 0.06; // 60mA
76 float voltage = 5.0;
77 float num_leds = 30;
7879 auto call = id(led_strip).get_current_values();
80 float brightness = call.get_brightness();
8182 return num_leds * current_per_led * voltage * brightness;
8384# Sicherheits-Button zum sofortigen Ausschalten85button:86-platform: template
87name:"${friendly_name} LED Emergency Off"88icon:"mdi:lightbulb-off"89on_press:90-light.turn_off:91id: led_strip