- Power symbols should point upwards
- Ground symbols should point downards
- Sections should be labeled
- Nets should generally not cross
- Nets should be labeled
- Either global or regular labels are fine
- Signals flow left to right
- Labels and values should be visible
- Footprints should not show up in schematic
- Differential pairs should be labeled and used as such
- Use the default symbols and footprints when possible
- Read the datasheet first
- Pick out parts for your BOM as you go, and be sure to read their datasheets
- Unless it's really small, put the matrix in a sub-sheet (Press
s
) - With wider boards, consider using a duplex matrix
- Route using busses
- Use the same thickness of traces for specific things and switch to thicker traces for high current connections
- Trace width calculator
- There is one included within KiCad as well
- It is recommended to use 15-20 mils for power, and 6-10 for traces
- Place a via for ground on every decoupling capacitor
- Single-sided assembly will make your board easier and cheaper to assemble
- Route traces in order of their sensitivity
- Crystal -> USB -> Power -> Matrix/other
- Keep your differential pairs length matched
- Vias in pads should be avoided, especially when getting a pcb assembled. The hole allows solder to flow into and might not leave enough for the part to be correctly soldered
- Place directionally sensitive parts in the same direction, such as diodes or polarized caps
- The factory might get confused and misrotate a component
- Rotate parts and switch GPIO pins around to make routing neater and simpler
- Consider properly connecting USB shield to ground (Proper ESD protection !!!!)
- https://electronics.stackexchange.com/questions/498039/how-to-correctly-connect-a-usb-shield-on-a-pcb
- Check other links down below
- 90 degree bends will work fine, 45 degree bends will most likely look better though
- https://www.protoexpress.com/blog/best-high-speed-pcb-routing-practices/
- https://www.alloutcircuits.com/technical-articles/practical-pcb-layout-tips/
- https://www.infineon.com/dgdl/Infineon-Z8F80033952_LitixPower-ApplicationNotes-v01_00-EN.pdf?fileId=5546d46277921c320177a6104dfb2ad5
- https://resources.altium.com/p/preventing-ground-loops-your-pcb-design
- https://www.st.com/resource/en/application_note/an5686-pcb-layout-tips-to-maximize-esd-protection-efficiency-stmicroelectronics.pdf
- Try to route columns on the top layer, and rows on the bottom layer