Big RGB Table Finally Needs Code

byte chip5[24];
...
  int randomnum5 = random(0, 255);
  SPI.transfer(chip5[randomnum5]);

randomnum5 will be in the range 0 to 254, right?

So you are indexing into chip5 in that range, but chip5 is only 24 bytes.

Ooops, off the end of the array. That will give random results.