Ok, so I understand that WLED is entirely overkill for what I want, but honestly the big pull is being able to use Alexa and the App
Here's what we have:
ESP32s (cause the 25kHz+ LED refresh rate is š)
1-5 "segments" of plain LEDs.
There may be "fairy lights", 3mm LEDs, 5mm LEDs, and so-on on any given segment
When there are hundreds of them, I drive them separately and use GPIO pins connected to transistors. When there are a few, I drive them directly from the GPIO pins.
Ideally, I want to be able to have each of these segments be controlled independently and maybe have effects that play off each other (like twinkle, flicker, etc).
I have been doing something passable with ESPHome, but there's no app and no Alexa.
Is this possible with WLED? Am I barking up the wrong tree?
Thanks
Hi!
There is support for LEDC PWM out in WLED with the WLED_ENABLE_ANALOG_LEDS define in NpbWrapper.h :)
It presently supports 4 channels (meant for RGBW, respectively), and they are set to the same color the first digital LED is set to.
In the upcoming 0.12.0 release (hopefully still this year!) I will add multistrip support, and that will be capable of outputting PWM signals for regular LEDs for up to 8 independant channels!
wait if we use esp32 we get better led refresh rates?!?
@ulte i believe @Joshfindit is referring to the PWM frequency for traditional LEDs, not the refresh rate of digital LEDs (which always run at a protocol speed of 800kHz for Neopixels)
wait if we use esp32 we get better led refresh rates?!?
@ulte i believe @Joshfindit is referring to the PWM frequency for traditional LEDs, not the refresh rate of digital LEDs (which always run at a protocol speed of 800kHz for Neopixels)
Correct: Iām talking about the PWM frequency of traditional LEDs. the ESP32 has a built in PWM driver that can do up to 40Mhz @1bit, or ~300kHz @8bit.
Iām very sensitive to PWM flicker, and have been very happy with the results of dimming traditional LEDs with the ESP32. Even at the lowest brightness I canāt detect any flicker.
Hi!
There is support for LEDC PWM out in WLED with theWLED_ENABLE_ANALOG_LEDSdefine in NpbWrapper.h :)
It presently supports 4 channels (meant for RGBW, respectively), and they are set to the same color the first digital LED is set to.In the upcoming 0.12.0 release (hopefully still this year!) I will add multistrip support, and that will be capable of outputting PWM signals for regular LEDs for up to 8 independant channels!
@Aircoookie Thank you for the reply. I did see WLED_ENABLE_ANALOG_LEDS, but I must say Iām confused about how it works.
Does that mean that it creates a āsingleā light with 4 channels, each channel being a GPIO PWM output? If so: where can the PWM frequency be set (or what is it?), and how do I configure the settings on the webpage?
Yes, 4 PWM outputs with one each for the Red, Green, Blue and White channel (of an RGBW light). The frequency is the the second argument of the ledcSetup(); method, which starts at line 225 of NpbWrapper.h. It is set to 5kHz by default.
An easy way to control these channels individually right now is to enable the RGB sliders in UI settings, which will let you set each channel independently.
@Aircoookie Got that working, 25kHz no problem.
Thank you š
Can't wait for 8 independant channels!
P.s. Watch out for "4 pwm timers are available, multiple channels (up to 8? 16?) can use the same timer" (https://forum.micropython.org/)