I have been working on developing an MP3 module since there doesn't seem to be one out there that does what I want. I have also been developing my own custom arduino board. The two ideas collided and I realized that the atmega32u4 used for the programming pretty much does nothing once a sketch has been loaded. What would prevent me from using it to handle the FAT, MP3, and uSD access for me? The idea is that I can access it from the main controller and have it open and serve up files and play MP3s for me with no real overhead on the main controller. Another idea would be to build an SD bootloader routine that could load a sketch from the SD card and program the main controller for field updates.
Am I right in assuming that the 32u4 just sits idle in between sketch uploads?