In the first part I identified the problem leading to the unit overheat: a design decision consisting of dropping more than 10 Watts on a couple of 3W resistors. I've thought of several ways to address the issue: change the 5V rail to a switching design put bigger resistors and mount the 7805 on a heatsink have a switching or linear preregulator that drops 12V to a more manageable 7-9 Volts I have a few switching supplies bought from ebay at around 2-4$ each based on the LM2596 reference design. However they might be noisy and I'm not sure how well they handle high loads. Should be good enough for charging the USB and anyway the 1.8V and 3.3V lines go through linear regulators first, cleaning them of noise. The bigger resistor solution would also work but I did not have any 10W resistors at hand and I'm not sure they would fit in the small space between the CD tray and the case. Since I have a few LM7808 and LM7809 from scrap I decided to go with the third solut...
Electronics and programming interspersed at various levels of difficulty.