ESP32 FastLED wave functions for 1000 LEDs


I’ve been trying to control 1000 leds with FastLED library using esp32 on a single pin. Below you can find a loop function. It is just a rainbow which is coloring each next led.

void loop() {

//generate wave for changing led pixels
uint16_t sinBeat = beatsin16(30, 0, NUM_LEDS, 0, 0);

//generate wave for colors
uint8_t colBeat  = beatsin8(45, 0, 255, 0, 0);

//assign colors to pixels
leds[sinBeat] = CHSV(colBeat, 255, 255);

fadeToBlackBy(leds, NUM_LEDS, 10);;

This is working quite good but for 128 led strip. Above 256 leds there are starting to appear glitches as dark pixels - it looks like the wave generating positions of pixels skip some of them. Any ideas what could be an issue here?

I have installed WLED on the ESP32 before so for sure it is possible to control these 1000 pixels through single pin. I believe that there is some problem with this wave function when it comes to high number of leds.

While there is an archive of old Google+ FastLED content on Maker Forums, the FastLED community has requested that new conversation happen on Reddit: