I have a 5 meter strip of 12V digital RGB LEDs. The chip is WS2811 (see photo of IC). There are 50 addresses on the strip.
Using the FastLED library, I am able to run the "FirstLight" example that chases full white with a single address at a time, up and down the length. That works fine. So I know they individually perform properly.
However, if I set all LEDs to full white (255), the first few addresses look white but then the higher the address, the more red it is. See photo below. The strip starts in the center of the reel.
#include <FastLED.h>
// How many leds are in the strip?
#define NUM_LEDS 50
// Data pin that led data will be written out over
#define DATA_PIN 5
// This is an array of leds. One item for each led in your strip.
CRGB leds[NUM_LEDS];
// This function sets up the ledsand tells the controller about them
void setup() {
// sanity check delay - allows reprogramming if accidentally blowing power w/leds
delay(2000);
Serial.begin(115200);
Serial.print("### SETUP ###");
//Both strips are ordered BRG
FastLED.addLeds<WS2811, DATA_PIN, BRG>(leds, NUM_LEDS);
//FastLED.addLeds<UCS1903, DATA_PIN, BRG>(leds, NUM_LEDS);
}
void loop() {
for (int i = 30; i < NUM_LEDS; i++) {
leds[i] = CRGB::White;
}
FastLED.show();
}
To debug, I tried turning on just the last half. The result was still problematic:
for (int i = 30; i < NUM_LEDS; i++) {
leds[i] = CRGB::White;
}
I then tried setting all LEDs to white at half brightness, and that looks much better, but the LEDs at the outside are still off-color compared the inside:
I've tried setting the whole strip to full blue, and that works fine.
I also have another nearly identical LED strip that instead uses the 1903 chip. The same code (initialized for 1903 instead of WS2811) works just fine on the 1903 strip!
Other things I've ruled out:
- I'm using a bench power supply capable of 5A, this strip pulls less than 1.5A on full white.
- I have verified the supply holds at 12V
- I have not let the LEDs heat up while coiled in the reel. I make sure to unplug them after observing their color.
What could cause this on the WS2811 strip while the 1903 strip works perfectly?