Go Down

Topic: questions about chaining RGB LED+servo modules using WS2801 chips.. control? (Read 4 times) previous topic - next topic


Thank you very much for your reply.

I have been playing with the adafruit library already (in fact I am while typing this).

From what I understand with a quick look in your code (I'm no expert), you are using the "soft spi" way this library is offering.
This allows the spi bus to stay free but the "soft spi way" is of course slower than the "hardware spi" way,

My question is :

Did you try this solution yourself and did you come accross speed / framerate issues with this solution ?

Thank you again for your advice.


That's because the hardware spi is used by the ethernet shield.  soft spi seems to work fine. I can't remember what the clock speed is but it's possible you'd notice it affect the update speed if you had loads of led chained but I doubt it.

  How many do you plan to use?


from http://forums.adafruit.com/viewtopic.php?f=47&t=24256

These figures are strictly I/O time and don't include any overhead for calculating the pixel image. Thus your actual speed will be somewhat less, depending on the complexity of the rendering code involved.

Original library using digitalWrite:
1000 + 470 microseconds per LED
(For 150 LEDs, about 14 frames/second)

Revised library with direct PORT writes:
1000 + 130 uS/LED
(~ 50 FPS)

Revised library using hardware SPI:
1000 + 17 uS/LED
(~280 FPS)

the one in bold is for soft spi. so given that artnet will limit you to 512 leds you should be ok!


Thanks a lot for your valuable help.

I don't plan to use more than 512 / 3 = > 170 leds per arduino so I should be ok, you are right.

I ran some strobe tests and it IS fast !!

I'll keep this post updated when I receive my ethernet shield.

Thaks again.



No worries. Note that I'm using an arduino Mega.  I know some people have had success with the UNO and artnet, but not me.

Go Up