Week 5

Electronics production


Shown how you made and programmed the board

Explained any problems and how you fixed them

Included a ‘hero shot’ of your board




Weekly Assignment

Group Assignment

characterize the specifications of your PCB production process,

Group work

Individual assignment:

Make an in-circuit programmer by milling the PCB


Group Work

characterize the specifications of your PCB production process, i did milling of PCB and we characteristic the processes

Things i learned this week

+introduction to smd electronics components

+PCB milling on Fr1 board using 1/64 and 1/32 milling bits

+soldering SMD component on PCB board

+Testing PCB board

Goal of this week

the final achievement of this week is to make fabisp

What Is 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

Introduction to smd electronics components

Here smd stands for surface mounted device which will mount on your milled pcb board


1 Smd resistors ,A resistor is a passive two-terminal electrical component that implements electrical resistance as a circuit element. In electronic circuits, resistors are used to reduce current flow, adjust signal levels, to divide voltages, ,it have a code which is smd code written on its top we need to convert this value into ohm,learn more  about smd resistor and conversion calculator you may refer

+ About smd reistance and conversion calculator

+ Video for learning how to convert this smd code into resistance value


2 Smd diode the most common function of a diode is to allow an electric current to pass in one direction (called the diode's forward direction), while blocking it in the opposite direction (the reverse direction diode is for one way transfer of current )

smd ex zener diode , led etc

Note you need to take care while fixing this component as it has positive and negative terminal polarity


3 AT tiny 44 and 45 this is AVR microcontrollers  , they can control the features or actions of the product ,they are dedicated to one task and run one specific program ,it is that part which you have to program and for using this it have a data sheet which have all information about it


4 Smd capacitor Capacitor is an electronic component that stores electric charge.


5 Six pin header  for programming  your board through computer you need to connect your board through usb via pin which is 6 pin male and female header

Machine Modela Mdx-20

it is micro milling machine it capable of milling material such as ABS, acrylic, woods, plaster, styrene foam, chemical wood, modeling wax, and light metals such as aluminum and brass, but it could be also used for precise 3D scanning when the “Roland Active Piezo Sensor” accessory was attached

we are using it for milling copper clad / fr1 pcb board

maximum work area for this machine is 203,2 (X) x 152,4 (Y) x 60,5 (Z) mm

10W DC spindle motor that could reach a maximum revolution speed of 6500 rpm, with a tool chuck for 3.175 mm (1/8") shank diameter milling bits

PCB milling on Fr1 board

the learning phase of pcb milling begin with group assignment of milling pcb of fablab cept ,if you want your pcb to be neately printed with no use of chemical you may use this process of pcb milling ,you can find pcb milling machine in any fablab nearby your location as this machine is part of standard inventory of fablab


What is pcb miling / what  is significance of pcb milling

a subtractive manufacturing process which involves the removal of areas of copper from a sheet of PCB surface in order to recreate traces for signals /current  to flow in specific manner as per circuit design, When the copper is removed it facilitates electric isolation and creates the necessary ground planes and on this track you are going to fix your smd components


hat you need for pcb milling

for pcb milling you need pcb milling machine , pcb borad , scotch tape / any thin double sided tape of good quality , milling bits , brush for cleaning


As i am milling pcb for making fabisp the design i use Design of Zaerc's FabTinyStar Pcb for milling you may get that from here download design or there is also lot more detailed information available on tutorial of fabacadmy 2018


Steps for PCB milling


1 Selection of pcb board

the first step for PCB milling begin with selecting board for PCB milling you may come across fr1 and fr4 board it is recommended that to use fr1 board as it is more stronger than fr4 for more detail visit our group assignment page


2 Selection of tool

for pcb tracing we generally

use 1/64 inch bit  , for pcb

 cutting you may use 1/32 or

1/16 inch bit




3 Setting pcb board on the bed

you need to apply scotch tape in back of pcb and paste it at top-left  corner


 Fixing tool to the tool head

we are using modela mdx-20 machine for pcb milling in which you can easily attach or replace tool by using allen key

directely from tool head

4 Select image type png and machine model modela mdx-20

and click on make png


Here on the top select bit to mill trace  1/64 and speed to 2 mm/s and and zmin to -o.1mm

5 when new window open click on the load file and locate your png format file

Set the speed =2 and

z min to -0.1 and overlap =4 and click on make path rml

Once rml file is made click on send it and begin milling

This is how your milling is going on

As i am milling 2 pcb out of this board one at offset 4 and another at offset 3 so now you need to set again the orgin at x=5 and y=25 and repeate the same step

Now set the origin for next path by clicking on move to xmin and ymin

Now generate the path for cutting process for first mill board by loading png cut file and setting cutting parameter before this you need to change bit


Click on begin milling to start the cut path before this set bit to its origin point as shown below

You need to set bit by gravity agin at this position and begin milling

Once one path of cutting is done now again set origin to x=5 and y=25 and move tool to this point and start cutting here by begin milling

This are the cutting i get from you can observe for offset 4 path is more clear

In the above i have't use sacrificial board in milling process but here i am showing you how to fix this board and use it

Correction in above Work

1 use sacrificial board in milling process

i have shown steps of setting sacrificial board in week 7 assignment you may refer week 7 milling page for more details

2 use online version of fabmodule

i used online version of fabmodule in week 7 while i was designing my own circuit you may refer my week 7 work for getting steps of using online version of fabmodule


Soldering Process

The next step after milling is  of soldering pcb board i am making fabtiny isp so i refer a link in tutorial for soldering , before starting soldering it is recommended that you should collect all the components you need at one place and keep the isp schematic In front of you to identify the correct position of each components .

List of components

1 soldering iron

2 multimeter

3 soldering stand

4 twiser

5 smd components

6 soldering wire

7 desoldering wire


Smd Components

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



Fix the pcb board on soldering stand and start soldering by holdling component using twiser and place it on the board using schematic diagram

Note while placing component check the component polarity in case of diode , electrolyte capacitor , mosfet , transistors,  battery , LED etc


Apply liquid flux on board before soldering as it will help in prevent oxidation of base and filler material as tin -lead solder attach very well to cu but poor to various oxides of cu


For soldering component you may try one more method that apply first the solder on board than heat solder and fix component on it i find difficulty in doing soldering in this way as i did one mistake as i applied solder on both side legs so it is difficult to set component over it

For next component i solder one side first than heat this to fix component than solder next side, i learn this from aditya , fabacademy fellow


Now for soldering At tiny 45, i first solder diagonally opposite legs ,this thing really help me in fixing this component

Soldering six pin header for soldering this part you need to fix it legs first in board with little solder than apply solder carefully by keeping iron in straight position

Testing and failures of this week

The boards i milled in this week and i also not able to  program in all of them as some are

Problems with each usb

fabisb 1 - i solder wrong header on removing header track broken

fabisb 2 in which track broken while soldering as while removing extra soldering track broken failed in testing by multimeter

fabisb 3 this is alright and once programed  also recognized in my laptop  but when opening this in linex for testing again it won't get recognized

fabisb4 this is also right passed in multimeter testing also show green signal with avr but showing error in programing

i mill another board which is next to my four isp and repeat the same process again it work and finally programed the error with above four board is of soldering make sure you soldering is done correctely  than only this is accomplished

Testing Process

For testing pcb first process is to check using multimeter for this set multimeter on continutity mode in which on touching probe a beep sound  there and you also need avr isp to confirm it

Things you need to check by multimeter

1 check continuity of path /track so you are confirmed that any track is not broken

2 check nearby legs of AT tiny as many time they may get soldered with each other

Connecting your isp with avr programer if the yellow light blink it means your borad may have some problem


a) check your have connected the avr header to your isp in right way i.e ground in back side

b) check your all soldering

c) check 6 pin male header pin soldering



As i connected the avr header in wrong way earlier so it is blinking yellow on changing connection  it start blinking green it means it is ready for programing

Programing  ISP

things you need for this

1 Avr Programer

2 linex laptop

3 your isp


Programming fabisp

1 Plugged in the AVRISP and the FabISP into the USB slots on the PC. Connected it  with the 6 pin header

2 Use these commands in sequence if you have linex in your laptop here all red code you have to write in command box step by Steps

1 Open terminal

2 Type sudo apt-get install avrdude gcc-avr avr -lib make

3 Download fiirmware source code from this link extract it and copy this at desktop ( you will find file with name of firmware_45.zip

4 Now go to desktop by typing cd Desktop

5 Type ls (locate file with name fts_firmware_bdm_v1 )

6 Copy this file and type command cd fts_firmware_bdm_v1

7 Type gedit a window open select make hex file and edit this file to change "programmer ?=usbtiny "to "programmer ?= avrisp "


8 Plug your board into usb port 2.0 and connect avr isp header into your board


9 Type make flash this will erase the target chip program flash memory with content of the .hex file you built before


10 Type make fuse


11 Unplugh the board from usb port and disconnect the programmer than plug it back into the usb

12 Type lsusb

13 See multiple vendor USBtiny  this means you lsusb is recognized and it is programed

i am using this isp in week 9 for programming my board you may refer week 9 for getting More detail about using fabisp to program other board


Comparing Fabmodules (Linux), Fabomdules (online) and MODS

In this week i have used fab modules linux first to mill a pcb than i used online version , later on  i explore MODS from nils recitation lecture for comparing three of them as for understanding all this three and how they are evolved one after another you Must Refer Nils recitation lecture on mods and his gitlab fabmods Repo , here i am writing summery what i learn from lecture stating from fabmodules linux version it is the first version which nils develop from kokampe and this is in form of compile c program and java script   ,it was offline version which you need to download and setup in your computer it have many , it was good as it run without Internet and many fablabs in remote location used this earlier we also use this from last 2-3 years for its process Refer the steps i used in milling in top of this page , this year we were asked to use Online version of it so i made an tutorial on using fabmodules online version  it is similar to offline version but have some changes in user interface as it is different , it is even better you can also milling traces overlapping  in your computer also before putting your file for milling , it is compatible with Mozilla Firefox browser  and Google chrome also in linux , after this nils introduce fab modes, which is light reper all it does is to patch the modules together and it runs in HTML5 UP


Limitation with fab modules

the limitation with fabmodules is that you can use it for routine but what actual happening their you can't change  i.e you can use the predefines program in that but if you want to change in its workflow you can't anb in fab mods you use many modules and by editing in modules or adding or removing modules you can change or create new Workflow as per your requirement you can use this

Goal of Fab Mods

1 It is made for Rapidely compose workflow

2 Colaborate on workflow

3 To make faster computing performance and handling large amount of memory data

Explaning interface of mode

When you open fabmods click link here you were asked to right click on clicking on clicking right you get options as modules , program , edit , options .,on modules option you will find open server modules , remote server modules , open remote module we generally select open server module as here you will find many modules connecting this you can make a program as per your requirement as you finds events, files, frep , shapes ,2d ,3d , transform , view , ux , etc on clicking on any modules it open up in window and you connect many modules , edit them to create new workflow ,

in program option you will finds some programs about gear generation as this is really good tool what he wrote for making all types of gear you wll finds many programs , for machine also you can use this program as for modela , shopbot there is program so overall this is nice tool you even solidworks is also writing websockets for mods as mods .solidworks.com .

Features of mods

1 Eficient event passing

2 just in time computation

3 lots of typed array manages large blocks of memory

4 cam workflow use typed array to use giga bytes of memory and manage them easily

5 file reader allow you to bring large chucks of data

6 sockets to do messaging

7 GPU interfaces


also this is only of 60 kb all the rest is in browser so very light weight so overall this is more better than earlier fabmodules


             Next week