WordClock - SK6812 - NeoPixel

Bei RGBW anstelle RGB hast Du ein Byte mehr je Lichtpunkt, also 114. Das könnte den Speicher überfordern.

uint32_t R, G, B, W = pixels.Color(0, 0, 0, 255);
...
  int R = 255;
  int G = 0;
  int B = 0;
  int W = 0;

Erst global, dann lokal in loop, der Sinn erschließt sich mir nicht.

void paintWord(int arrWord[], int R, int G, int B, int W)

Wenn R, G, B, W global sind, brauchst Du sie nicht an die Funktion zu übergeben.