Just want to say, long time lurker here on the forums. I have decided to create a button box for simulation games, and wanted a good amount of buttons. I thought this may deserve it's own topic, as I am combining two Pro Micros in one board. I have reviewed the circuit, and it looks solid to me. I wanted to share, as well as get any advice before I order a few boards to test.
Any help is appreciated!
Edit: Added additional photos
Really appreciate the quick constructive feedback!
- I increased the traces to 3.5
- Removed the top copper as suggested
- The encoder switches will be connected to the "buttons" matrix.
- I am mounting this with clips inside of an enclosure. Similar to this Arduino Pro Micro board mount (remix) by Widge - Thingiverse
- I don't have a lot of experience with SMD, but may have to give it a try.
- Micros are both plugged into a USB hub connected to the computer.
- I see TX and RX used for the button matrix in other designs. Seems to work ok with my testing.
Here is the top and bottom together with changes:
Why two Pro Micros? You can use port expanders and shift registers if you don't have enough GPIO pins.
On a 32U4 based board (like the Pro Micro), those pins are not used for usual communication with a PC; so I'm not sure where you see a problem 
32U4 based boards (and most newer Arduino boards) have USB hardware in the microcontroller and that is used for communication with the PC over USB. The Rx/Tx on those boards is connected to the UART and can be used for something else (similar to the additional UARTs in a Mega).
Each Joystick device needs to have 32 buttons or less. Otherwise I have to use vJoy and UCR configs. I would prefer not to do a bunch of software configuration to have these work with various games.