@mjs513 - Thanks
Making them Non-static would imply that they are now on the stack and as such get initialized back to their original values each time...

Making all of those data members to be PROGMEM, helps. I was able to reload several time, without USB getting trashed...

Also with DMA updates, there appears to be some timing issue I have not figured out yet... But so far it works if you configure for Terminator eyes... Getting a little over 100 frames per second.

As for where the polar array is used? Not sure did not look yet, just noticed it in the default eye file..
Code:
const uint16_t polar[80][80] PROGMEM = {
  0X007F, 0X007F, 0X007F, 0X007F, 0X007F, 0X007F, 0X007F, 0X007F,
  0X007F, 0X007F, 0X007F, 0X007F, 0X007F, 0X007F, 0X007F, 0X007F,
...