These are chat archives for Makuna/NeoPixelBus

28th
Jun 2017
RĂºben Caceiro
@rcaceiro
Jun 28 2017 17:54

I have some issue. I have one SK6812 strip and a ESP32 Dev Module and this code

#include <WiFiUdp.h>
#include <ArduinoOTA.h>
#include <NeoPixelBus.h>

const uint16_t PixelCount = 144; // make sure to set this to the number of pixels in your strip

NeoPixelBus<NeoGrbwFeature, NeoEsp32BitBangWs2813Method> strip(PixelCount,14);
void setup()
{
  strip.Begin();
}

void loop() 
{
  for (uint16_t i = 0; i < strip.PixelCount();++i)
    { 
        RgbwColor color=RgbwColor(255,0,0,0);
        strip.SetPixelColor(i, color);
        strip.Show();
    }
}

And my leds flicker

Michael Miller
@Makuna
Jun 28 2017 19:48
Things to Try:
1) Put a delay(1) after the strip.Show() inside the for loop. Does the problem still exist?
2) Change the PixelCount to 5, what do you see? Are the pixels after the first five still black? Does it work?
Michael Miller
@Makuna
Jun 28 2017 19:57
Questions to answers:
1) How are you powering the NeoPixels? 144 pixels at full bright (RGB & W) will take significant power. If the power requirements are not met, you may see flickering and odd effects.
2) See Wiki Entry on 3.3v devices driving NeoPixels
AND, its a good practice to always call strip.Show() right after the Begin() to clear the pixels to black, as they may remember their previous values.
NOTE: Not sure why you are calling show inside the for statement?
One more thing, make sure you do have RGBW pixels, looking at them there is usually a yellowish dot on the surface that is the W part of the LED.