Electronics Production

Let's Go

What is Milling?
It is designed to cut or shape metal using a rotating tool.
What is PCB Milling
is the process of removing areas of copper from a sheet of printed circuit board material to recreate the circuit according to the design or layout.
Earlier I've tried Making PCB's by Etching process
In etching we take an Impression of our print on the board by some heat treatment and dip it in FeCl3 solution and the rest copper parts are removed only the imprinted part is left.
But this time I was going to learn a new technique for PCB manufacturing. Although this (milling) method is good for personal use not for commercial use.

First Things First

Introduction to Mods-
For the input to the milling machine we have to give it .rml file which is basically composed of G-Codes
G-codes are basically the language that the Milling machine understand it is basically the co-ordinate system x,y,z system.
The work flow is as follows-

  1. Making of the PCB design (we omit that this week)
  2. Conversion of the design file into .png format file with a high resolution say above 1000 dpi (dots per inch).
  3. Converting that .png file into .rml extension by going to fabmodules.org
  4. Selecting the input .png file
  5. Selecting the output as .rml
  6. Now selecting the Process and Machine (SRM-20)
  7. Setting some pararmeters (which i'll be discussing further) the calculating the tool path and finally downloading the file.

Testing the Milling traces

For testing the capability of milling traces I downloaded the test file from fab academy archive.

you can check out the files from this link.

I performed the test using 1/64 endmill and it clearly milled to the last of .001 trace in a good manner.
However in making our ISP I used V-Bit because of non availabiltiy of 1/32 endmills and also the pointed edge of 1/64 end mill was blunt somehow fue to some mis-handeling of the bits.
For the group assignment you can go to our group assignment page from this link.

Let's Make the Fab ISP

Step 1-Selecting the Fab-ISP

There are various versiions of Fab-ISP one can choose any one to make I decided to make Brian's ISP.

Step 2 - Using Mods

Selecting the output image type, in my case it was .rml.

Step 3-Selecting the Process

Now select the process : Blue circled-Traces to cut the path, Red circled-To Cut the board outline to prey it out.

Step 4- Checking the size of image

On the right hand side toolbar check whetehr the dimensions of the image are correct and then select the Machine. The by default speed is 4mm/sec we don't need to manipulate that.

Step 5-Selecting the Process Parameters

After doing the group assignment and understanding the machine th conclusion of the parameters are displayed I used this settings for milling my board.

Step 5- generating tool path

After sCalculating mods will take some time to generate tool path depending on the process parameters given and after that you can just save your file and it will be saved in your downloads folder in.rml extension.

Understanding Our various parametrs and V-bit

  • Just to observe that the tool dimater of a v-bit will increase with the increase in Cut Depth.
  • Understanding Our fabmodules parameters- Optimum Settings Used

  • Cut Depth is how deep you want the tool to cut in your PCB. Generally the cut depth shpuld be equal to the thckness of the Copper Film on the FR4 board that we used.
    I used 0.12 as it worked best for out makeshift V-bit.
  • Tool Diameter is the diamter if the tip of the tool, For tracing we use 1⁄64 and to cut the outer edge we use 1⁄32. Since in our lab we use a V-bit instead of the 1⁄64 bit, by some trial and error TOOL DIAMTER of 0.35mm to .40 worked best for us.
  • No. of Offsets is basically the number of passes the tool will take over the surface, for minimum it should be 4 so that traces aren't short, but if one want's just the traces and all pther copper to be removed then -1 settings should be used(it takes a long time and noisy)
  • Offset Overlap so our tool dia is 0.35, now lets assume it mills one line first, then it goes for the next line, Optimally the difference b/w the two lines should be equal to the tool diameter which is 0.35mm. But to be on the safer side we give a certain overlap percentage so that the cutting head goes over the preiously cut path and makes sure there is no residue left.
  • Speed- We left the Default speed i.e 4 mms/sec.
  • Direction- Climb should be selected instead of conventional settings it gives best results in climb.


Download the traces and outline files from here-

Let's Do the milling

Machine used Roland SRM-20
Software for operating the machine - V panel for SRM-20
The machine consit of a power button and a cable to connect to the PC in our lab a setup is made for SRM so I was saved from downloading any kind of software for it as it was already connected to lab's PC which had the software for it.

Using V panel to operate SRM

The video shows the movement of the tool using the gui of v panel.


Building the FAB-ISP

    Components required-
  • 1x ATtiny45 or ATtiny85
  • 2x 1kΩ resistors
  • 2x 499Ω resistors
  • 2x 49Ω resistors
  • 2x 3.3v zener diodes
  • 1x red LED
  • 1x green LED
  • 1x 100nF capacitor
  • 1x 2x3 pin header

Soldering time

The Setup


Although how many time Neil adviced us during the class how to solder but handling those minute lil baby smd components was very tricky and soldering intially was a bit of tough to me but following the instruction given by by instructors I was finally able to solder my first ownm ISP board.


Playing with Vinyl Cutter

So thanks to Jay Sir a Fellow Student in our lab who purchased a copper tape from amazon and I decided to experiment this week making fab ISP, Flexible PCB using Vinyl cutter.

Setting Up the Copper tape on Vinyl Sheet..



Then we use the vinyl plotter to test a cutout of Fab ISP.

Selecting the Outer traces
The final cutout was adjusted as clearly seen from the outline and was send to cutter

Learning Outcome through the process was to take very much care in case of soldering and also removing the traces from the vinyl sheet.
We also faced issues using the tool of vinyl plotter, at times it was so deep that traces were ruined so we adjusted it by reading the manual book.
I'll be looking forward in future to make some flexible circuits.


Programming the Fab-ISP

Here I came to know the down or loss of having a windows system. I felt like for development environment windows can be a bit hard side to get things done. A separate tutorial is given on Brians page for windows system for programming of the ISP.
You can go to the tutorial from this link.

Installation Of Softwares

The bundle of software I installed were-
  • Atmel AVR Toolchain
  • GNU Make
  • AVR dude

  • Updating My Path

  • Zadig - for one time Update of Drivers

  • I was bound to contact my instructor for this all the other prople in Lab were either using mac or linux for which only one command was doing all the magic.
    However following the tutorial given the documentation is very neat and I followed the same steps infront of my instructor who was the incharge for my isp board that day.

    Editing the Makefile

    I downloaded the firmware file from the fab archive and opened the Make File in sublime text and changed the programmer to avrmkii
    because we were programming using avr ISP. Basically we were using a progremmer to program a board and make it a programmmer so that it will be used in future as a programmer.
    Download the firmfile from here-

    Running Commands

    Now after that I opened the bash terminal and run these commands-
    $make
    You'll receive no error
    $make hex
    You'll see a long chain of Hex code being generated
    $make fuse
    Setting Fuses so that Board uses external clock
    $make flash
    Flshing the board means overriding any prev programs etc.
    $make rst disbl
    And taddaaaaa green leds were blinking too fast showing the date transfer(maybe) and yes the ISP board wos programmed. During the process my laptop was with the instructor and we were having one on one session for this so I could'nt take screenshot of my laptop.
    The whole command was typed infront of instructor along with Jay Sir as he was laso stuck in this with me and it was closing lab time we all were in a hurry I could not maaged to take screen capture of my laptop screen's command window.
    Now the last process was blowing up the fuse. So i desoldered the fuse.. Now my programmer was ready to program any board.
    ~Pic taken from brians Page and edited by me


    Learning Outcome

    Top