starting with spi questions about code

i fixed my erratic arduino behavior with a 100uf bypass cap after the arduino, i just looked at the demo board and it has 4 extra 10uf caps on each of the different vcc segments, the datasheet showed these as optional and didnt even list values so ill give that a shot first.

im not sure if its a noise or peak power problem the 100uf is solving, technically the speaker should not be doing more than 670mW according to the spec sheet so its probably noise.