Firstly, thank you for taking the time to review my PCB.
I have already made a few PCBs using MCU breakout boards, and have decided the time has come to learn how to use the MCU directly. This RP2040 breakout board is really just that, with a small feature that's relevant to my next project: dual-purpose USB-C. I have tried to build the board as defensively as possible, trying to imagine how hosts could be reasonably out of spec: this may someday be submitted for FCC certification.
This will also be my first stencil + paste + hot plate job (somewhat unavoidable with the QFN components).
Starting with the USB-C port with the single extra feature on the board:A host device/motherboard (breadboard for now) will have daughterboard-facing USB-C ports that have their CC pins tied to ground (preventing real USB enumeration). This R7 and R8 format a voltage divider to determine whether a real USB host is connected (reboot into DFU) or whether the motherboard is connected (use D+/D- for UART).
Power supply:Here I am using the TI LMR10510YMF for converting 5v to 3v3 logic level. I opted for a switching power supply because each daugtherboard wil have its own power supply, and could host watt-hungry components, so efficiency is pretty important. Pretty-much a 1:1 copy of the typical application.
No schottky diode between VBUS and the power supply, as there will already be one on the motherboard, and USB-C prevents reverse polarity.
RP2040, Flash, Crystal:Pretty-much a direct copy of the typical application, optional components included.
Files:I have attached PDFs for convenience, but the source is also available:
https://codeberg.org/jcdickinson/hexkbd/src/branch/main/schematics_new/hexkbd