1. Group assignment: characterize the design rules for your PCB production process
2. Individual assignment:
- make an in-circuit programmer that includes a microcontroller
- by milling and stuffing the PCB, test it,
- then optionally try other PCB processes
- Group assignment: characterize the design rules for your PCB production process
- Individual assignment: make an in-circuit programmer that includes a microcontroller
by milling and stuffing the PCB, test it,
then optionally try other PCB processes
### Objectives
To produce a PCB using one or more manufacturing processes
To solder components and test the board
To program the PCB to become a programmer
To produce a PCB using one or more manufacturing processes
To solder components and test the board
To program the PCB to become a programmer
#### Introduction
This week is about learning to fabricate a PCB, not necessarily design it. There a some different options of in-system programmers in the [FabAcademy notes](http://academy.cba.mit.edu/classes/embedded_programming/index.html#programmers). In the AVR family, there are boards based on the the ATtiny45, ATtiny44 and ATmega16U2.
I review all options, and decide to make the ISP based on [Brian's design](http://fab.cba.mit.edu/classes/863.16/doc/projects/ftsmin/index.html#check) because it seemed simple and straight-forward. It is called the FabTinyISP.
I used the facilities in FabLab UAE to fabricate the ISP. I used the Roland SRM-20.


I use a double sided FR1 board to mill the ISP, because the lab is out of stock of single-sided ones that are not locally available.
An in-system programmer is basically a...
...
...
@@ -42,28 +41,28 @@ I first use Mods.


But it shows me unclear toolpaths with default settings, for both the traces and the outlines.
But it shows me unclear toolpaths with default settings, for both the traces and the outlines. With random dots being detected arounf the traces.
I'm not sure why these errors occured. I try using FabModules with the same files and same settings. And it works perfectly. So I guess Mods has a different way to read these files.
Thse are the steps for FabModules:
- Select **input format: png** (same as the file downloaded)
- Select the traces file from your directory
- The input section on the rights shows the meta info of the image. Check the resolution is **1000 dpi** and the overall size. The - image is 1:1 so the PCB will be the same size as mentioned here.
- Select **output format: rml** (depends on the machine you use; Roland machines use rml)
- Select **machine** from the dropdown: **SRM-20** (I'm using this at the lab)
-**Speed: 4 mm/s** Standard speed used with a 1/64in endmill
-**x0, y0, z0** all **0** this makes the cutting start exactly where you set the origin on the machine
-**zjog: 2 mm** is the distance the endmill travels in z direction when it lifts up to move in the air to another xy coordinate
-**xhome, yhome, zhome** are the coordinates the endmill moves to at the end of the job, i leave this empty so it take the default - value of the machine.
- Select **process: PCB traces (1/64)** this basically fills in default values for the standard trace milling process
-**Direction: climb** here is a diagram that explains climb vs conventional cutting
-**Cut depth: 0.1mm** to cut through the upper layer of the FR1 boards
-**Tool diameter: 0.4 mm** (=1/64 in)
-**Number of offsets: 4** this is the number of paths around the traces, if its too little soldering components is difficult, if it - too much, it takes a long time to mill, 4 is just enough (-1 to remove everything completely)
-**Offset overlap: 50%** The overlap between two paths, to ensure no material is left with error
-Select **input format: png** (same as the file downloaded)
-Select the traces file from your directory
-The input section on the rights shows the meta info of the image. Check the resolution is **1000 dpi** and the overall size. The - image is 1:1 so the PCB will be the same size as mentioned here.
-Select **output format: rml** (depends on the machine you use; Roland machines use rml)
-Select **machine** from the dropdown: **SRM-20** (I'm using this at the lab)
-**Speed: 4 mm/s** Standard speed used with a 1/64in endmill
-**x0, y0, z0** all **0** this makes the cutting start exactly where you set the origin on the machine
-**zjog: 2 mm** is the distance the endmill travels in z direction when it lifts up to move in the air to another xy coordinate
-**xhome, yhome, zhome** are the coordinates the endmill moves to at the end of the job, i leave this empty so it take the default - value of the machine.
-Select **process: PCB traces (1/64)** this basically fills in default values for the standard trace milling process
-**Direction: climb** here is a diagram that explains climb vs conventional cutting
-**Cut depth: 0.1mm** to cut through the upper layer of the FR1 boards
-**Tool diameter: 0.4 mm** (=1/64 in)
-**Number of offsets: 4** this is the number of paths around the traces, if its too little soldering components is difficult, if it - too much, it takes a long time to mill, 4 is just enough (-1 to remove everything completely)
-**Offset overlap: 50%** The overlap between two paths, to ensure no material is left with error

...
...
@@ -85,5 +84,3 @@ On the left bottom corner, fix the FR1 board with a double-sided adhesive tape.