NeoPixel LEDs are the bee's knees, but in a few scenarios they come up short…connecting odd microcontrollers that can’t match their strict timing, or fast-moving persistence-of-vision displays. Adafruit DotStar LEDs deliver high speed PWM and an easy-to-drive two-wire interface, bridging the gaps in the spectrum of awesome.
DotStars vs NeoPixels
The basic idea behind DotStars and NeoPixels is the same: a continuous string of individually-addressable RGB LEDs, driven by a microcontroller. The way each goes about it is a little different. DotStars aren’t necessarily a better thing in every situation…there are tradeoffs, each has its pros and cons to consider…
DotStars |
NeoPixels |
+ Extremely fast data1 and PWM2 rates, suitable for persistence-of-vision displays. + Easier to interface to a broader range of devices; no strict signal timing requirements. + Don't have to worry about special pins, DMA requirements, interrupt management (e.g. Arduino Servo library or tone() function on the popular ATmega series). – Slightly more expensive. – Fewer available form factors. – Needs two pins for control. |
+ More affordable. + Wide range of form-factors (pixels, rings, matrices, etc.). + Works from a single microcontroller pin. + RGBW (RGB+white) variants available. + DMA support on many popular platforms - for examples SAMD21, SAMD51, ESP8266/ESP32 (and more!) – Strict 800 KHz data rate; not all systems can generate this, and speed is a bottleneck on very long strands if you don't have DMA support. – 400 Hz refresh/PWM rate not suitable for persistence-of-vision effects. Light painting may be OK! – Not compatible with some platforms that don't have DMA and require interrupts (e.g. Arduino Servo library or tone() function on the popular ATmega series). – Requires special pins on some platforms - for example ESP8266 DMA support, one of the few DMA supported pins on Raspberry Pi, etc. |
1 Up to 8 MHz on Arduino, up to 32 MHz on Raspberry Pi.
2 Varies among component generations; 1.2 KHz, 4.6 KHz, 19.2 KHz reported.
Text editor powered by tinymce.