Daisy-chaining 7 IC's

but that seems to be too slow for the TLC's to accept.

SPI doesn't normally have a minimum speed.

Did you try using shiftOut()?

I think the library does it at some point by its self.

Why do you say that? Looking at the source code I can see nowhere that is changes the speed except in the setClockDivider() function.

EDIT: You're not constantly calling SPI.begin() and SPI.end() are you?


Rob