Neopixel is the product name of coloured LED’s that can be controlled individually. Neopixels come in a variety of shapes and sizes. At the core is a LED driver (WS2812B), able to produce an RGB colorspace. To drive it, a single PWM line suffices. Multiple ‘NeoPixels’ can be connected in cascade. Connect the data input of the first Neopixel with the Arduino PWM pin of your choice via a 470 Ω resistor, simply connect the following Neopixel data input to the data output of the first Neopixel.

Das Neopixel Überguide

Minimal requirements:

  • Place a 470 Ω resistor on the data line. This resistor must be at the NeoPixel end of the wire to be effective!
  • Add a large capacitor (1000 µF, 6.3V or higher) across the + and – power supply connections.
  • Try to minimize the distance between the Arduino and first pixel.
  • Make sure that your connections are secure. Jumper wires do not make reliable connections.

Other useful tips:

  • If powering the pixels with a separate supply, apply power to the pixels before applying power to the microcontroller.
  • Avoid connecting NeoPixels to a live circuit. If you simply must, always connect ground first, then +5V, then data. Disconnect in the reverse order.
  • NeoPixels powered by 5V require a 5V data signal. If using a 3.3V microcontroller on  5V powered Neopixels you must use a logic level shifter (3.3V -> 5V) for the data signal.
  • Be aware of the current requirements especially with large numbers of Neopixels. As an example: for running 100 Neopixels at maximum, you will need at least a 5V, 6A power supply and appropriate (larger cross-section) wiring!