Skip to content

Week 08 — Electronics production

Global Class

The global lecture focuses on fabricating and assembling a PCB, which becomes the foundation for all subsequent electronics work including input devices, output devices, and networking.

A key message is that future assignments depend on having a working board, not just a designed one.


PCB Fabrication Methods

Several fabrication approaches were presented:

  • dead-bug wiring (manual wiring, not recommended)
  • chemical etching (common but hazardous)
  • CNC machining (Fab Lab standard workflow)
  • laser-based methods
  • vinyl cutting

Etching allows fine resolution but introduces environmental and safety concerns.

Machining is preferred in Fab Labs because it is:

  • fast
  • clean
  • suitable for prototyping

Global


The lecture highlighted that PCB production is a deterministic process:

  • correct setup → consistent results
  • errors → usually due to tool, material, or configuration

Assembly and Debugging

Soldering is not a secondary step but a core skill.

Important techniques:

  • clean solder joints
  • desoldering braid
  • hot air rework
  • fixing errors with jumper wires

Debugging is expected and part of the normal workflow.


Key Insight

PCB production can be summarized as:

design → fabrication → assembly → debugging → validation

A board is only complete when it runs code and behaves as intended.


Local Class

Remote Participation

Due to absence from the physical session, this week was documented through:

  • review of classmates’ documentation
  • observation of shared lab workflows
  • comparison across Fab Academy repositories

Observed PCB Workflow

A consistent production process was identified:

  • export design from KiCad
  • generate toolpaths in Mods
  • mill traces and outline
  • clean, solder, and assemble
  • test and debug

Key Observations

  • correct milling depth is critical for trace isolation
  • flat board setup strongly affects results
  • soldering quality directly impacts functionality
  • debugging is a normal and essential step

Common issues:

  • broken or uncut traces
  • solder bridges
  • unstable programming connections

Key Insight

A PCB is only complete when it is:

  • powered correctly
  • programmable
  • functionally verified

Weekly Assignment

Group Assignment

Here is the work we did for the group assignment:

Fab Academy Barcelona Week 08

Reflection and Learnings

  • Understanding how stepper motors are controlled through multi-pin sequencing instead of simple STEP/DIR signals.
  • Using a logic analyzer made it possible to visualize invisible signals and directly relate code → electrical signals → motion.
  • Verified the importance of common ground and clean power for reliable measurements.
  • LED feedback + signal capture is an effective layered debugging strategy.
  • Reinforced the value of testing subsystems before integration

ASFALT relevance: This clarifies how to control actuators (future positioning, airflow, or mechanical movement) and how to debug signal behavior early before full system integration.

Personal Assignment — PCB Production Process

Goal

Produce a PCB using CNC milling by preparing files, generating toolpaths, and fabricating the board using a Roland SRM-20.


PCB Production Workflow

The workflow consists of:

  • exporting traces and outline from KiCad
  • generating toolpaths using Mods
  • loading files to the Roland machine
  • milling traces
  • milling the board outline
  • milling the holes
  • cleaning and inspecting the PCB

1. Exporting PCB from KiCad

The PCB design was exported from KiCad as vector graphics.

PCB source export

From this design, separate layers were prepared:

  • traces
  • holes
  • outline

2. Preparing Files for Milling

2.1 Converting to Raster Format

The exported design was converted into PNG images to be processed in Mods.

I incorrectly saved the file as A4 and caused a lot of headaches because webpage kept crashing.

Wrong input format


2.2 Inverting Colors

For proper toolpath generation:

  • white = copper to keep
  • black = material to remove

Traces

Traces inverted

Holes

Holes inverted

Outline

Outline


3. Generating Toolpaths in Mods

The prepared PNG files were imported into Mods.

Mods workflow

Key Settings

Mods settings

  • tool diameter: 0.396 mm
  • cut depth: 0.1016 mm
  • max depth: 0.1016 mm
  • offset number: 4
  • offset stepover: 0.5

Toolpath Preview

Before milling, the toolpath was simulated:

Toolpath preview


4. Machine Setup (Roland SRM-20)


5. Milling Process

5.1 Bed Preparation

The sacrificial layer was cleaned to ensure a flat surface.

Bed cleaning


5.2 Fixing the PCB Material

The FR1 board was fixed using double-sided tape.

Tape preparation

Board placement

The generated toolpaths were loaded into the Roland machine using VPanel.

VPanel setup

Steps:

  • set XY origin
  • manually lower tool to surface for Z origin
  • verify spindle speed and movement
  • load milling file

5.3 Z-Probing

The tool was carefully lowered to define the Z zero reference.

Z probe


5.4 Milling Traces

The traces were milled using a 1/64” tool.

Rough traces

Everything was looking fine so far:

Final traces


5.6 Cutting the Outline and milling holes

The board outline was milled using a larger tool.

Suddenly noticed that the outline and holes were not my design!

Outline cut

Apparently, the person who used the mill before me paused their work and didn’t cancel it. Even though I deleted previous files from queu, this little detail caused the machine to mill the pending file.

Outline cut

Anyways, had to start over with this in mind…


5.5 Re-milling

Now updloaded files for holes and outlines and came out correctl:

Isolation pass


6. Cleaning and Inspection

After milling, the board was cleaned and inspected.

Isolation pass

Looking good (according to me…)

Final board


7. Detail Inspection

Close inspection of traces revealed issues in fine-pitch areas. Reviewing with Dani and Adai, for no apparent reason, the machine didn’t mill the pins properly.

Milling issue overview

I have to go back and figure out what went wrong and redo the milling to get clean traces.

Learnings

Reading back on the notes from GLobal Class, the lecture highlighted that PCB production is a deterministic process:

  • correct setup → consistent results
  • errors → usually due to tool, material, or configuration

This was definetly the case.


References and AI Use

  • Mods Project (MIT Center for Bits and Atoms)
  • Roland SRM-20 documentation
  • ChatGPT used for structuring workflow and documentation formatting

Prompts

Files

  • KiCad design files
  • toolpath settings
  • source code