back to index


Assignment: make the FabISP in-circuit programmer

This assignment is divided in three main parts milling, stuffing and programming, but first of all we need the files of the board. Big black and white images that we are going to transform into a working circuit. I chose Neil's board and I changed the logo. First image is the border of the board, second the draw of the circuit, and the third is the same but with an "A" instead of the logo.

Before start milling, we have to clean and setup the machine. I unscrew the bed from the milling machine (1), I remove the rests of the previous PCB and the tape used to fix the material to the bed, and finally I clean the glue with ethyl alcohol (2).

Two macro images to see the before and after cleaning the sacrificial layer.

New PCB, new tape, everything is clean and there is no dust or waste to be sure that the surface will be completely flat. I checked also that the new PCB is flat or not, and I had to correct it bending it slightly.

Turn on the milling machine, press the "UP" and "DOWN" buttons to make sure that the Z position of the machine is set up (avoiding surprises when moving the head of the machine), press "VIEW" (the head moves it forward) and change the mill bit (using the blue plastic protector). The first end mill to use is the thinner, 1/64".

The machine is ready to set up the init point, using the "UP" and "DOWN" buttons. Press "DOWN" till you listen that the mill bit perforates, and then press "UP" a couple of times.

At the computer, open the Fab Modules using the Terminal and the next window will apear to the screen. Select the input format (.png) (1), the output process (Roland MDX-20 mill) (2) and click make_png_rml (3).

New window, load .png (1) to open a file…

…and we select the one with just the border. This file is for the cutout, we use it at the beginning to check that the bed is completly flat and that we set up the Z position correctly. The idea is to scratch just the surface, engrave the border of the board over the PCB to check the depth of the milling.

Choose the mill traces (1), set up the Z to "-0.0" and the offsets to "1" (2), "make.path" (3), define X and Y and click "move to xmin.ymin" (4), "make.rml" (5) and "send it!".

A preview appears on the screen and you can click "Begin Milling" (1) to send the job to the machine. The same button change to "Abort" to abort the milling, and when it finishes, to "Exit" (2).

When the machine starts milling, we have to stay alert to stop the machine if anything goes wrong. We can stop it with the "VIEW" button. The end mill didn't perforate the whole surface, but nearly.

I repeat the steps to load an image, this time the drawing of the circuit, and I change the Z to "-0.1" to be sure that I am going to perforate the whole draw. I also change the offsets to "4". "Send it!" and "Begin Milling".

After 10 minutes of milling, the first file becomes real on the surface of the PCB.

It's time to cut out the board. I change the mill bit to a big one (1/32"). I load the new file and change offsets to "1", top z to "-0.5", bot z to "-1.5" and cut depth to "0.5".

Ready to send it.

Milling part, done.

Stuffing part, here we go.
The board on the left is a finished board from a classmate, just as a reference while soldering all the components in place.

The drawers with all components we need for our boards. Be careful and organized while taking the components from the drawers, it's easy to make a mess.

Here my list of components completed, ready to solder to the board.

The board, some components on place, and others lying on the table just to see the ridiculous size they have next to the tweezers.

Stuffing the board, done.

In contrast to some of my classmates, I had no problems with this part. Luckly, all the components were the corrects, and soldering was good. I follow the tutorial for this part, and the programer does its job at the first try.

Last step, desolder a couple of components SJ1 (1) and SJ2 (2)…

…and that's it for this week, see you soon for amazing 3D printing and scanning stuff!



download files


back to index