Friday, June 28, 2024

Milling PCBs in the Classroom, Updated Workflow


I'm continuing to teach high schoolers to design their own circuit layouts and mill the boards so they can solder them together and have their own custom hardware to keep. The microcontroller I use for these is usually an ATTiny 85, 84, Adafruit Metro Mini, or Raspberry Pi Pico, all relatively inexpensive. What follows is an easier workflow than I've outlined in previous posts.

EasyEDA All The Way!

EasyEDA editor is a web-based schematic and layout editor that makes the process much easier than Eagle. Almost any part can be found and while the layout interface is still a challenge for anyone who hasn't designed pcb's before students get the hang of it with a little practice.
This is a pretty detailed guide I made for students a couple years ago that I still follow. Rather than handing out such an information heavy guide now I walk students through the steps together. Here are some key points I go over:
  • In schematic view, we make sure the footprint for each part looks right. There are many variations that come up in search and some end up being incorrect.
  • When connecting wires to components make sure to see the dot that shows a connecting point before clicking to make a connection. Also drag a component around a bit to check if connections are really made.
  • In layout mode, set the measurement units to mil
  • For student work on a CNC I change the routing width to 40-60mil, depending on the complexity of their circuits.
  • Change routing conflict to ignore.
One thing to explore is an EasyEDA education account, which I got approved but haven't tried yet. It seems like it should make the workflow easier and give the teacher access to student designs.

Getting the g-code

The steps in the guide for using Carbide Copper3D are still accurate for the workflow, except for the X and Y offset for the Carvey, to give room for the Smart Clamp. That offset can be done in the pcb layout step when setting the board outline. Sometimes I will just generate the gcode myself if we're short on time. 

Cleaning g-code for CNC

Carbide Copper gives two options for downloading your g-code. You can get one file that includes tool changes or four separate files to use with the different milling tools. For me the separated files throw g-code interpreter errors on the Easel website so I use the single file and use this Python software to strip the tool change codes out and split it to the four files.


No comments :