This week, I learned how to mill a printed circuit board (PCB), populate it with itty-bitty components, and program it to become a programmer.! I knew nothing about the process before we started, and it blows my mind that we created the thing that will program other things! EDIT: I understood the process of making the FabISP, but didn't fully understand what each component did, so I went back to what we did this week and learned in more detail how exactly the FabISP works using this tutorial.
To attach the copper plate onto the platform of the machine, we simply used some double sided tape.
During our training, we learned how to set up both tracing designs and cutting out the board. While cutting, we had a problem as the endmill came loose towards the end, leaving the PCB jagged. As a group, we also characterized the milling process using the line pattern that Neil showed us in class. We used the 1/64th endmill, which is the same as what we will be using to etch the traces of our circuit.
The pattern goes from .001" to .020". The thinner traces look cleaner than the thicker ones, but anything less than .0156 inches doesn't get etched. This makes sense, because the region has a width that is thinner than the 1/64th inch tool diameter, and so the MODs software does not trace it; otherwise it would remove material that it shouldn't.
Unfortunately, the first time I milled the board, the copper plate was slightly uneven on the platform, and so some of the copper wasn't etched all the way. This could have created a short circuit, so I did some surgery by hand to engrave out the unfinished copper paths. I also had to carve out a little copper rectangle at the tip of the PCB to ensure that the voltage and ground never touch. Overall, the millilng process is simple, but the results are impressive, even with some parts done by hand (in my opinion, it adds character).
After the PCB was printed, I utilized this guide and got ready to populate it with the following components:
I taped down my circuit board and used the smallest soldering tip I could find. This worked decently, but then I discovered an amzing thing device that made everything so much easier - the micropscope! It didn't take long to get this new hand-eye coordination down, and using a the magnifier to look at what I was doing made my soldering cleaner and more efficient.
Here's what the finished FabISP looks like!
I initially tried to program it using the given programming unit, but the make flash command didnt work on the first few tries, so instead I decided to program it with a labmate's finished programmer. We hooked up my to-be-programmer to his programmer and to my laptop, ran make flash, make fuses, lsusb, and make rstdisbl. Then, I disconnected the Vcc to Vprog pin jumper, and voila! I was done!