Advertisements

Neopixel Current vs. Arduino Power Supply Voltage

Just to show why powering Neopixels directly from an Arduino is a Bad Idea, I wired up an Adafruit Jewel thusly (and, BTW, exactly like their lead illustration shows):

dsc00925 - Adafruit Neopixel Jewel with Tek current probe

Makes your skin crawl just to look at it, right?

With all seven Neopixels set to a gray PWM (64,64,64), the average current should be around 90 mA: 21 * 18 mA * 64/255, with another 6% knocked off because the WS2812B controller imposes that much mandatory dark time at PWM 255.

Eyeballometrically, this looks pretty close at 100 mA/div:

Neopixel current 100 mA - 64-64-64 0-7 200 mA peak

Neopixel current 100 mA – 64-64-64 0-7 200 mA peak

But those seven asynchronous PWM oscillators guarantee this will happen every now & again:

Neopixel current 100 mA - 64-64-64 0-7 400 mA peak

Neopixel current 100 mA – 64-64-64 0-7 400 mA peak

The 400 mA peaks happen when all seven Neopixels turn on at once. The broad flat floor means they’re off most of the time and the power supply sees a hefty 400 Hz pulsating load.

The bottom trace shows the effect of those peaks in the top trace (at 200 mA/div) on the Arduino’s VCC pin:

Neopixel current 200 mA - 64-64-64 0-7 400 mA pk w VCC

Neopixel current 200 mA – 64-64-64 0-7 400 mA pk w VCC

That’s at 200 mV/div and AC coupled to remove the 5 VDC supply. Because the board runs from USB power, the on-board regulator doesn’t contribute to the problem, but there’s plenty of problem to go around.

Always use an external power supply and a 5 VDC regulator with Neopixels!

Advertisements