WS2801Controller<11, 13, 10, 16> LED1;
WS2801Controller<7, 9, 6, 16> LED2;
WS2801Controller<5, 8, 4, 16> LED3;
WS2801Controller<A5, 3, 2, 16> LED4;
And the strings are all 32 pixels long.
Hmm - ok, I wonder if the analog pin mappings are off (for performance reasons I do the pin to port mapping at compile time). - exactly which arduino platform are you on? (UNO, Leonardo, mega, etc…)
UNO for testing. Eventually it’ll be a bare 328P with a Pro Mini bootloader on it. The pin mappings are the same between them.
As far as I know the bootloader for the Uno and Pro Mini map the pins the same way: PC5 = A5 … down to PC0 = A0.
Incidentally, I can’t run the hardware SPI at a rate lower than 16 … with 32 pixels.
I don’t have the code in front of me at the moment, but that’s a clock rate of 1Mhz I believe.
Try grounding clock and data at the far end of the strip?
Ok - found/fixed the analog port mapping issues - both with the analog pins as well as the use of the same port. Next preview release should have them both fixed.
Too late. grin I sent out two strips yesterday (to be used tomorrow night) using the old library because when I first designed the controller that went with them, I was using output pins on the same port.
They. Work. Fine. I look forward to testing the next release though.