Electronics Manufacturing

Once the schematic and PCB for the XIAO RP2040 devboard were designed, I was ready to move to milling the PCBs.

Our lab has a Roland SRM 20 that is to be used for the milling projects. Unfortuantely, it has been under some long term maintenance. Currently, at week 16, it is operational, but the main guide rod is rusty and we are missing a lot of essential bits.

However, we also have a parallel facility on the campus that is an extension of the lab, where we have a Protomat E44. This is a slightly primitive looking machine, but it is effective and gets the job done.

Mr Sangram, who manages that lab, was very helpful in showing me around the machine as well as it's software.

The E44 Protomat and LKPF

PCBManuf01

PCBManuf02 PCBManuf03

PCBManuf23 PCBManuf25

PCBManuf24 PCBManuf26

LPKF E44 Guide

DB10

I exported the project, including various layers and gerber files, from Eagle in Fusion360 as a zip.

While this exported zip is very structured, and somewhat unnecessary seeming, after a few rounds with LPKF and the E44, I realised we only need about 4 files.

  • The upper Cu layer
  • The drill holes layer
  • The outer cutting layer
  • The bottom Cu layer, if needed.

You import the necessary files into LPKF, and set them as layers with the relevant operations. The software gives you a list of bits required, and other details.

PCBManuf37

PCBManuf38 PCBManuf39

PCBManuf30

PCBManuf31

PCBManuf32

PCBManuf33

PCBManuf34

PCBManuf35

PCBManuf36

Milling the PCB

PCBManuf04

PCBManuf05

We first milled the RP2040 devboard with the following settings :
Isolation : 0.4
Channels : 2

PCBManuf28

Since the contour was attached, the board did not come off, but it was very evident that the isolation was not enough. Also, due to the components I had selected for the design, the pin holes for the female berg pins were too small. This was also leading to a lot of tool changes and increase in time taken.

I edited the design files and we also increased the isolation to 0.4

Stuffing the PCB

PCBManuf06

PCBManuf07

PCBManuf08

PCBManuf09

I tried soldering this. The header pins went in fine but the isolation was still not enough. I managed to solder everything in place, but there were a few bridges that connected the pads to the unmilled copper.

I changed out my soldering iron for a new one with a fresh tip. But that just seems to mean that I have an "unseasoned" iron that's not even heating up as well as my older one.

I also aimed a 370 degree airstream at all the connections while doing this hoping that this would sort-of melt and reflow the solder and the surface tension would break apart any bridges. It worked on a couple of bridges but wasn't quite as easily effective as I had imagined.

Also, ended up touching the barrel of the heat gun and burnt my finger tip. Yeesh.

PCBManuf10 PCBManuf12

PCBManuf11

PCBManuf13 PCBManuf14

Finally, I had a series of pin headers with no bridged connections or atleast cleaned up ones, but it was too tedious still. It was also late in the day so I decided to mill a few more trials before risking adding the RP2040 board and solder the rest of the pin-headers all over again.

Over the next few trials, I increased isolation as well as channels.

0.4, 4
0.6, 2
0.4, 6
PCBManuf16

Testing versions of a later iteration

DB13

PCBManuf27

Stuffing the PCB - Round II

With the better isolated devboards, I installed the pin headers easily enough.

PCBManuf29

Next I proceeded to solder the RP2040 onto the devboard.
Soldering Castellated Vias was a very useful resource.

I first attached one single corner of the RP2040. PCBManuf18

Once one was done and adjusted in place, the rest were easier to solder in place. PCBManuf19

My first devboard was finally ready. PCBManuf20

I had made an assumption/educated guess on the edge margin, and thankfully it worked out, but with a tight margin. I will definitely tweak this for the future. PCBManuf21

PCBManuf22

A later version. DB14

PCBManuf40

Testing the DevBoard

I tested the devBoard with a simple Switch input.

Every time the switch was pressed, the onboard LED would light up Green for 2 seconds. For this I also quickly mounted a switch and resistor on a perfboard to use for the testing. I decided to make a new one since the one I used for the Week 4 exercise was occupied, and I wanted to make a better mounted version of the Switch anyway.

PCBManuf41

PCBManuf42

Soldering

Soldering Iron Tip Cleaning
Using Flux | Soldering Basics
Soldering Crash Course: Basic Techniques, Tips and Advice
SMD Hand Soldering - Instructables
How to use Seeed Studio XIAO in your PCB Design

Two Methods for Soldering Surface Mount Components by Hand

Exercise Files

Gerber files
XIAO RP2040 DevBoard v12_2023-05-31

Switch test code
XIAO_switchTest.ino