Library for TLC5940 16-channel PWM chip

Have you run any fades over many hours?

I've been testing a few different wave-like motions, and when I come back to them in the morning, things are either off-sync or "stuck" flickering between two pins. The fade action of each pin seems fine, it's just the timing that breaks.

I thought it might be related to the millis() function, but last night I used a generic "Cylon" sweeper and it ended up stuck flickering between pins 5 and 7.

Here's my crappy code:

#include <TLC5940LED.h>
int i;
void setup()
{        
      Tlc.init();
      Tlc.resetTimers();
}

void loop()
{
  
  for(i=5;i<14;i+=2)
  {
    Tlc.newFade(i, 1500, 0, 4095);
    Tlc.newFade(i-2,1500,4095,0);
    while(Tlc.updateFades());
  }
 for(i=13;i>2;i-=2)
  {
    Tlc.newFade(i, 1500, 0, 4095);
    Tlc.newFade(i+2, 1500, 4095, 0);
    while(Tlc.updateFades());
  }
}

EDIT: I forgot to add that hitting the reset button gets things back to normal.

And the "stuck" part of the cylon script is, as i said, between i=7 and i=5 on the second half.

This didn't happen with the regular arduino PWM controls. I'm wondering if it's something inside updateFades()