TLC5940 Rainbow Fade question

It will need some clever programming.

No, it won't. It WILL take some thought about appropriate variable sizes.

int RedPins[] = {1,4,7,10,13,17,20,23,26,29,33,36,39,42,45};
int GreenPins[] = {2,5,8,11,14,18,21,24,27,30,34,37,40,43,46};
int BluePins[] = {3,6,9,12,15,19,22,25,28,31,35,38,41,44};

Now, really, does your Arduino have 30,000 pins? If it, like most, has less than 255 pins, you could use byte as the type, and save 45 bytes.

I'm wondering just how wasteful of resources the Tlc5940 is, or whether you are simply trying to do more than it was designed to do.

The pins in those arrays define where they are on the tlc5940. I dont think it is oit of its capabilities because its been done before on 8x8 matricies

The point is "int" holds values up to 32000. byte holds values to 255. Why waste the extra space by using int for pin numbers?

good point, lemme change it up.

Interestingly enough, after I changed them to bytes, I was able to get a much broader fade. Instead of it stopping after 4 leds going to red, it stopped after all of them went to red and two started to go to orange.

Hmmm, I may have come up with the solution.

How would I enclose the arrays into another array? See those RedRainbow, GreenRainbow, and BlueRainbow arrays? I had planned on putting those into a Rainbow array that contained those and just run through those loops. If I do that, maybe I'd solve the fade buffer and ram issue?