Skip to content

Run beautiful WLED lighting effects on ESPHome devices based on ESP32 with ultra-clean one-line configuration. No verbose lambdas, just simple effect declarations.

License

Notifications You must be signed in to change notification settings

effelle/wled-runner

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WLED Runner for ESPHome

High-performance WLED port for ESPHome (ESP-IDF Only)

This native C++ component brings WLED's advanced lighting effects to ESPHome. Unlike the old addressable_lambda method, this implementation runs as a proper component optimized for the ESP-IDF framework.

⚠️ Platform Compatibility:

  • Framework: ESP-IDF Only (Arduino is NOT supported)
  • Chips: ESP32 Classic and ESP32-S3 Only.
    • ESP32-C3 is currently not supported due to single-core limitations affecting effect smoothness.

If you want to know how and why I created this component head over here.

✨ Features

  • Native C++ Performance - optimized for multi-core ESP32s
  • Clean YAML Syntax - Simple addressable_wled configuration
  • 11 Built-in Palettes - Easily customizable
  • Smooth Transitions - Professional-grade animations
  • Dynamic Controls - Speed, intensity, palette, and reverse direction

🚀 Quick Start

See QUICKSTART.md for installation and configuration instructions.

📋 Available Effects

Currently, the following core effects are fully ported and optimized:

ID Name Description
8 Colorloop Solid color cycling through palette
9 Rainbow Per-pixel rainbow with density control
38 Aurora Northern lights animation
40 Scanner Smooth scanning eye with fading tail (KITT/Cylon)
60 Scanner Dual Two scanners moving in opposite directions
66 Fire 2012 Realistic fire simulation
74 Colortwinkle Magical fairy-dust twinkles
97 Plasma Smooth plasma animation
101 Pacifica Gentle ocean waves

(More effects are being ported incrementally)

🎨 Available Palettes

  • Default (0) - Effect-specific
  • Forest (1) - Earth greens and browns
  • Ocean (2) - Deep to light blues
  • Rainbow (3) - Full spectrum
  • Fire (4) - Red/orange/yellow
  • Sunset (5) - Purple/red/orange/yellow
  • Ice (6) - Cool whites and blues
  • Party (7) - Vibrant mixed colors
  • Lava (8) - Black/red/orange
  • Pastel (9) - Soft desaturated colors
  • Pacifica (10) - Deep ocean with white crests

ℹ️ Architecture & Requirements

Why ESP-IDF?

This project is built strictly for the ESP-IDF framework to leverage:

  • Direct RMT Access: Precise timing for addressable LEDs without Arduino overhead.
  • Multitasking: Effects run on a separate core (where available) to prevent wifi blocking.
  • Memory Management: Better heap control for complex effects like Pacifica.

Note: ESP8266 is explicitly NOT supported due to hardware limitations (RAM/Floating Point speed).

🙏 Credits

  • WLED by Aircoookie - Original effect algorithms
  • FastLED library - Color handling and utilities
  • ESPHome - Framework integration

📄 License

MIT License - See LICENSE file for details.

About

Run beautiful WLED lighting effects on ESPHome devices based on ESP32 with ultra-clean one-line configuration. No verbose lambdas, just simple effect declarations.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published