Fab Academy 2017
Learn how to make ALMOST anything!

Electronics Production


For this week's assignment, It was required to make an in-circuit programmer. It was required to mill the board, stuff it with components and program it.

What is the FabISP?

The FabISP is an in-system programmer for AVR microcontrollers, designed for production within a FabLab. It allows you to program the microcontrollers on other boards you make.

To do this, there are 6 main steps:

1. Preparing your file.

2. Preparing your machine.

3. Mill your board.

4. Cut your board.

5. Solder components.

6. Programming the board.

Now. let's begin with milling the board! :D Although this process is actually fun and easy, it requires good preparation for your machine and file.

The Machine I used is "MDX20"ز

Preparing the files:

So, for the traces, we already had FabISP traces ready to download from leacture notes here. But Notice that there are 2 files, the one with crystal and the one with resonator. For me, I chose the crystal one (Mainly based on the components you have in the lab).

Here are the traces and the board.

Traces Outer Board

The next step in preparing the file is generating the rml file that issent to the machine. RML file is the Gcode the machine uses to execute the file. For that, we use Fab Modules. We start by the traces.


Preparing the traces:

For the traces, we use 1/64" Mill bit.

1. Open Fab Modules.

2. Select The traces file (image.png) as "Input".

3. Select "Mill traces (1/64)"

4. "Make Path" to review the path of the machine.

5. "Make .rml".

6. "Send it!".

This is what you'll get.


Don't Begin milling yet. A machine setup is needed first.


Preparing Your machine:

1. Use double sided tape to fix your piece of copper on the machine bed.

2. Mount your mill bit carefully in the collet.

3. Start moving your machine to the start point you want using "X min, Ymin" and "Move to Xmin and Ymin" features.

4. Zero your Z axis, and this is by:

  • Move your machine to the bottom carefully using the down button.
  • When you are close to the copper sheet (around 0.5 mm), loosen the mill bit and allow it to slip slowly till it touches the surface of the copper.
  • Resecure the mill bit again.

5. Click "Send it!".

Now the machine will start implementing the traces.

Preparing the border:

Following the same steps for the traces, but we use 1/32" Mill bit

1. Open Fab Modules.

2. Select The border file (image.png) as "Input".

3. Select "Cut board (1/32)"

4. "Make Path" to review the path of the machine.

5. "Make .rml".

6. "Send it!".

This is what you'll get.


Don't Begin milling yet. First, replace your mill bit and redo the Zeroing Steps. Take care of the Xmin and Ymin as they have to be the same of the traces.

Now you can go ahead with cutting the board. Here how it will look like.


Solder components:

The main components of the board are:

1. ATTiny 44.

2. Mini USB.

3. Resistors, Capacitors and Diodes

4. Pin header.

5. Crystal 20MHz.

And here it goes!

Stuffing Board. Fnal Board.

For Programming the board:

For Programming the board, I followed this tutorial. And also, you can program the board with Arduino as ISP if you don't have another ISP using this tutorial.

Opening the path. Saving the path.
Modifying the make file. Using AVRdude.

A final Step to do, is to remove the Jumper (0 Ohm resistor), and HERE YOU GO!