Goal: Design a PCB to aid development of modular input/output peripherals (e.g. buttons, LEDs, IMU) for the wearable MIDI device.
Software: EAGLE (integrated with Fusion 360)
Hardware: SEEED XIAO ESP32-C3, PCB, headers
Prior Experience: No prior experience with EAGLE or other electronic design automation (EDA) software
New Methods:
EDA, schematic, wiring
Details:
- Assignment this week is to design a PCB that breaks out the pins of a microcontroller
- My final project is likely to use a SEEED XIAO ESP32-C3 (or S3)
- So, I chose to break of the pins of out board into headers
- Headers are organized to optimize modular testing of I/O peripherals
- Left/Right: for simple 3V3 I/O (e.g. buttons, knobs, LEDs)
- Bottom: for I2C communication with IMU (e.g. BNO-055 or BNO-085)
- Care was taken to order I2C connections for easy interface with BNO development boards
- Step-by-step process...
- Select "New Electronics Design" from Fusion 360 file menu
- Select "New Schematic" from within new design
- Import/enable component libraries of choice (in my case, HTMAA's curated library)
- Drag-and-drop microcontroller (SEEED XIAO ESP32-C3_TAPED) from library to schematic
- This microcontroller has solderable connections underneath it
- Important to select the "taped" version to indicate these connections will be covered/ignored
- Drag-and-drop 3x headers (CONN_06_FTDI-SMD-HEADER) from library to schematic
- Extend all pins with blunt nets and name them to form connections (see image)
- Select "Switch to PCB document" to generate PCB wiring diagram
- For wiring, make sure you start by setting constraints
- In my case, the end mill I'm using has a diameter of 1/64 inch, so no cut regions can be thinner than that
- I'll constrain uncut features (e.g. traces between pads) to the end mill diameter also
- In practice, uncut features could be thinner, but this is a safe rule of thumb
- To introduce automated checks for cut/uncut feature width...
- Select "Rules DRC/ERC Tab" and click "DRC"
- On the "Clearance" tab, set all values to your cut feature constaint
- For 1/64 inch, the closest is 16 mil (16/1000 inch)
- On the "Sizes" tab, do the same for "Minimum Width"
- Drag-and-drop all 4 components onto PCB and size the PCB outline accordingly
- Rotate and arrange components to minimize wire lengths and overlaps
- Use "Route Manual" tool to connect all components, emphasizing simplicity and legibility
- Make sure your route widths meet your constraint
- Check for constraint violations ("DRC" -> "Check" button) and iterate!
- Select "Push to 3D PCB" to generate your 3D PCB model
- All of these files are connected, so changes in one will transfer to the others
- You can even link the 3D PCB to a separate CAD file which will update when PCB changes are made
- See my first CAD exercise for an example of that Fusion 360 feature
Resources:
- HTMAA recitation EDA tutorial
- HTMAA EAGLE components library (many other options online)
Files:
[next week]