Electronics Production
Group Assignment:
- characterize the design rules for your in-house PCB production process
- submit a PCB design to a board house
Individual Assignment:
- make and test a microcontroller development board that you designed
- extra credit: make it with another process
Preparation
Before I could program, I had to mill my board. However, before starting, I decided to quickly review everything and make some updates. I fixed a small error with the button traces being connected, added a logo, and changed the font for my name to Roboto. I also decided to create a separate version using both the front and back sides of the board for ordering from PCBWay. Before proceeding, I discovered a plugin called FreeRouting for FreeCAD. This plugin automatically connected everything for me, which was fantastic! So now I had two versions:
Both came out quite well; however, the one-sided board is quite large and requires two 0-ohm bridges.
3D View and Design Files
I also discovered the 3D viewer from the KiCad 9.0 update. After experimenting, I even found out that you can use ray tracing to create stunning images. Here are renders for both boards:
Here are the design files. They are a little rough, and I need to document everything better, but they work.
One-Sided
Two-Sided
Milling
Milling is quite simple. We have a basic MDX-20. The process is as follows: Start by exporting from KiCad by pressing "Plot," selecting SVG, and choosing all the layers you want. For us, we use a negative plot. Then, open both files in Inkscape. Essentially, you need to adjust the page to fit around the design by pressing Ctrl+Shift+R and then exporting as a PNG with 1000 DPI. Next is ModsCE, and that process is explained here: Week 08 Group Assignment. After milling, I had this:
IMAGE
This did not look correct, so I tried again:
(Image)
And again:
(Image)
And again:
(Image)
And again:
(Image)
Do you get it now? I think the mill hates me. Finally, my instructor helped me, and I finally had this:
(Image)
But then... halfway through soldering, I realized I had made a design mistake and connected the two traces on my button like this, instead of this. I also ripped up a trace and melted almost every single connector. Additionally, I used the wrong resistor.
(Image)
So I tried three more times until I had this:
(Image)
Finally Done
After struggling a bit with soldering, I ended up with this:
(Image)
It's not perfect, but it works, so I'm happy.