Skip to main content

pcb-design

Group Assignment: Exploring Electronic Measurement Tools

This week's group assignment focused on getting hands-on with the measurement tools. Knowing how to use these properly is essential for debugging and validating circuits.

Multimeter

week06-28

Multimeter helps me check simple but important things in a circuit, like voltage, current, and resistance. It could check the board power, or to check continuity after soldering.

Oscilloscope

week06-29

An oscilloscope shows how a signal changes over time as a waveform. This is useful when the circuit “kind of works” but something is still wrong. For example, I can use it to check if a signal is stable, if it’s switching correctly, or if there’s noise. Compared to a multimeter, it’s less about checking values and more about understanding what’s actually happening in the circuit.

Multimeter vs Oscilloscope

ToolMain UseOutputGood For
MultimeterMeasure voltage, current, resistanceNumbersBasic testing and troubleshooting
OscilloscopeObserve signals over timeWaveformsSignal analysis and debugging

Multimeter

  • Check power supply
  • Test continuity
  • Measure resistance
  • Find short circuits

Oscilloscope

  • Observe signal shape
  • Check PWM or clock signals
  • Analyze timing
  • Detect noise or unstable signals

Simple understanding

  • Multimeter tells me what value is there.
  • Oscilloscope helps me see how the signal behaves.

Learning Background

This week, I began designing my first custom PCB(Printed Circuit Board) for my final project, using KiCad as my primary EDA(Electronic Design Automation) tool. KiCad is a free, open-source suite for schematic capture and PCB layout.

KiCad setup and schematic

Before diving into PCB design, I realized my fundamental knowledge of circuits was very poor, I had been mostly "copying schematics" without truly understanding the flow of current, voltage, and resistance. So I started with basic electronics fundamentals:

  • I reviewed SparkFun's tutorial on Voltage, Current, Resistance, and Ohm's Law, which clarified why we need current-limiting resistors for LEDs and pull-up/pull-down resistors for switches.
  • I also skimmed Getting Started in Electronics (available on Archive.org), which uses hand-drawn diagrams to explain component symbols,perfect for understanding schematics visually.

Next, I set up my KiCad environment:

  • Downloaded the official Fab Academy KiCad libraries from GitLab.

KiCad setup and schematic

Why Fab libraries? They ensure global compatibility across Fab Labs—ATtiny, ESP32, XIAO modules are pre-configured, eliminating custom library creation.

Then I get to learn about:

  • .sym files: Schematic symbol libraries (e.g., resistor zigzag, LED arrow-bulb), used for drawing logical circuits.
  • .pretty folders: Footprint libraries (e.g., 1206 resistor pad spacing), used for physical PCB layouts.

In KiCad, I configured:

  1. Preferences → Manage Symbol Libraries → Added fab.kicad_sym.

KiCad setup and schematic

  1. Preferences → Manage Footprint Libraries → Added fab.pretty.

KiCad setup and schematic

  1. Settings → Configure Paths → Linked Fab library path for proper 3D rendering.

Schematic design

First Attempt: Schematic Design

Inspired by alumni like Lei Feng and CHON KIT KUOK's Week 6 docs, I designed a simple "Hello World" board for my project:

  • Core: Seeed XIAO ESP32C3
  • Input: One switch (for pull-ring mechanism)
  • Output: One LED (for testing)
  • Expansion: Two 6-pin headers (for future Dupont connections to e-ink driver board)

In KiCad's Eeschema:

Create a project and import the library

KiCad setup and schematic

Schematic design

1.Placed XIAO ESP32C3 symbol from Fab library.

Schematic design

2.Added components: 1206 LED, SPST switch, 6-pin sockets.

Schematic design

Schematic design

Schematic design

Schematic design

3.Referenced XIAO ESP32C3 Wiki for pins:

Schematic design

4.Added two resistor to switch (prevents direct short-circuit, protects MCU).

Schematic design

5.Ran ERC (Electrical Rules Check) to fix power/ floating pin issues.

Wire all together, the schematic finished:

Schematic design

Draw PCB Layout

Click the Tools to Update the PCB, it shows one error of my resistor, and when I replace the second one, it looks well:

Schematic design

Then I got the first look of my PCB

Schematic design

Change the order to make it smooth to route:

Schematic design

Adjust the PCB design rules. Better before route,or we will do the step again.

Schematic design

Use Route tool to link the routes.

Schematic design

After finishing the trace layer, change to cut layer (Choose Cut Edge) and draw the boarder of the circuit board, use rectangle to draw the white frame. And I labelled my name on it:

Schematic design

3D viewer can be opened in PCB editor.

Schematic design

Design Revision (April Update)

After my first submission, my instructor flagged two issues: I was missing a ground wire, and my trace width was too thin for the milling machine to cut cleanly.

I went back and added the missing ground connection. For the trace width, I increased it from 5mm to 8mm—the thicker traces give the machine enough material to work with and produce a cleaner cut.

week06-24

week06-25

My earlier layout also had 12 DRC (Design Rule Check) errors flagged in KiCad. Interestingly, when I exported the files and sent them to JLC for fabrication, there were no actual manufacturing issues—the board came back fine. But for the version I was cutting in-house, I made sure to use the fully revised design.

week06-27 week06-26

Exporting and Converting the Gerber Files

Once the updated design was finalized, I exported the Gerber files from KiCad and followed a two-step conversion process to get them into a format the milling machine can use.

Step 1: Gerber to PNG

I used gerber2png to convert the Gerber files into PNG images. The tool outputs two files:

  • traces.png — the inner copper trace layer
  • outline.png — the board outline (edge cuts)

Step 2 : PNG to G-code

I then loaded both PNGs into Mods CE, which converts them into G-code for the PCB milling machine.