I need to drive 1000 APA102 LEDs with the fastest refresh rate possible.

I need to drive 1000 APA102 LEDs with the fastest refresh rate possible. What is the recommended platform? I was thinking of the Arduino DUE, in this case what are the best pins / configuration I can use?

I drove a strip of APA102 at over 60MHz data rate on a BeagleBone Black. The Beagle has two hardware SPI ports which can be activated. It’s pretty expensive as far as LED controllers go, however (US$70).

In terms of refresh rate, the shorter each strip is, the faster your refresh rate can be (outputting the data takes a certain amount of time per LED, after all). There is a BeagleBone project called LEDscape which writes to 32 WS281x strips at once (yes, the Beagle’s realtime unit really is that fast), however I never got it to work on mine.

Why are you using APA102, might I ask? Do you need the higher brightness and non-flickery fades? Or do you simply want to avoid the bitbanging timing problems that WS201x (and friends) bring with them?

IBM 370 series and a small power station :wink:

Seriously though, I am interested in the answer - we are looking to move up from Atmel328 to someting more ‘grunty’ - like a Teensy.

That depends how “grunty” you’re talking. If you want to do similar things to an Arduino, but more of them, a Teensy is probably the way to go. If you want to be rendering things in OpenGL, or just using loads more memory, you should look at an SoC solution like a RPi or BeagleBone (note: the RPi can write SPI to APA102 strips, but it doesn’t have a realtime unit to output the clockless signal needed for WS281x).

Instead of looking for “the fastest” refresh rate, I’d advise you to pick a lower-boundary for refresh rate, and use engineering principles to find the simplest solution that can achieve that.

thanks for the answers. on Arduino DUE I could get the 1000 LEDs to be refreshed in 4ms, using the hardware SPI with default values, in software mode time is around 11ms. I tried to specify a faster speed for the hardware SPI, but timings get worst. In this installation I just need 1 LED to be ON at a time. I wonder if the FastLED can do DMA

FastLED can split your signal over multiple pins and send it out in parallel on AVR—take a look at the 3.1 announcement posts for details.

Are the APA102s brighter @Luminous_Elements ? Do they draw more current per pixel?

I think that parallel output does not take advantage of hadrware SPI, so it it more interesting for clockless chips.

@Robert_Atkins They sure are. With a brightness value of 31 (100%) on the colour 0xffffff, I found them painfully bright any closer than 5 metres at night.

I took some measurements of a small strip of 4 elements here: https://docs.google.com/spreadsheets/d/1ZteACQL07r2qO6qStjnu6XvTob7CS2LMxXaPc7uNIH0/edit?usp=sharing

So you’re saying for four 5050 RGB LEDs with integrated APA102C controllers (that is, a total of four controllers with a total of 12 individual R, G and B emitters) you pull only 175mA at full brightness?

That’s interesting. If they’re brighter, I would have expected more current draw than the 4 x 60mA = 240mA I’d reckon on from 4x WS2812Bs. This is at 5V yeah?

Yep, four 5050 SMDs, each with integrated APA102 + R + G + B, at 5V.

Those are the readouts my cheapo DMM gave me. I have a better one here, alas, my reel of APA102 is stored in the US right now.