Assignment 5 :Electronic Production



Task

  1. Group Assignment: characterize the design rules for your PCB production process
  2. Individual Assignment: make an in-circuit programmer by milling the PCB, program it,


Electronic Production

The fifth week is "Electronic Production"as I am Electronic engineer ,I was eager for this week still I find new stuff in this week because in this week we have to build our own programmer, I did number of electronic project but I never made my own programmer to programme my board I used commercial board.so after finishing of this task I have one more addition in my electronical knowledge.

I made my FabISP step by step so,let's start

What is FABISP

The FabISP is an in-system programmer for AVR microcontrollers, designed for production within a FabLab. That is, it allows you to program the microcontrollers on other boards you make, using nothing but a USB cable and 6-pin IDC to 6-pin IDC cable. It's based on the USBtiny and V-USB firmwares, which allow the ATtiny44 to perform USB communication in software. Programming can be done through avrdude. The schematic is super simple: USB connector, ATtiny44, and 6-pin ISP header, with assorted passive components(Source-http://fab.cba.mit.edu/content/archive/projects/fabisp/)

Fab ISP

I started with PCB milling this process involve no.of factors like PCB,Milling machines,electronic components,etc.so,i am gonna explain it here,


PCB

A printed circuit board (PCB) is an electronic circuit used in devices to provide mechanical support and a pathway to its electronic components like resistors,capacitors,diodes,etc. It is made by combining different sheets of non-conductive material, such as fiberglass or plastic, that easily holds copper circuitry.PCB is also known as printed wiring board (PWB) or etched wiring board (EWB).(defination by techopedia)


In wednsdays's lecture Neil told to use FR-4 type material than any other FR-1 so I go through all pcb and their differences after searching I found that fr 1 is different and doesnt have glass fiber in it FR-1 is a hard, flat material that consists of a thin layer of copper over a non-conductive phenolic resin. It’s usually about the thickness of two or three credit cards. and not glass epoxy substrate.

I am using the FR-1 material for making circuit

Neil recommonded us 5 types of programmer.and from that I have to choose one and make electronics production.The boards given in syllabus are .

Brian,Zaerc,Ali,Valentin,Andy,David

From above list I choose Brian i.e FabTinyStar

It looks like pendrive and in fab academy syllabus they give its traces,interior,board componant and also make file for programming the board.we just have to take that png img of interior and traces and mill it with the help of modela machine or SRM20, and stuff the componant on it and also programme that board and make that board as a programmer.

Brian PCB

Lines and traces

This is the ckt path of brian board I have to mill the traces on my fr-1 epoxy material.

Boarder

This is the boarder of board and we use this for cut the board.

This is the ckt path brian board I have to mill the traces on my fr-1 epoxy material.

1.The reset switch and target power switch have been removed.The reset switch adds cost and isn't incredibly useful on an ISP programmer, as the target can be easily reset through a software command.
2.The copper ground pour has been removed and replaced with individual ground traces; this allows novice solderers to mill away more of the copper.
3.The extra pads connecting to the USB data lines were removed; this version is targeted solely at being an ISP programmer rather than being a general-purpose tiny45 board.

As file is ready now,set the bed level of laser by adjusting knob on laser cutter.as shown Lets move towords how modela & SRM-20 works

SRM-20 Machine

At Vigyan Ashram We have Modella as well as SRM 20 for PCB milling we used modella for practicing purpose because going through its advantages and disadvantages I prefereed SRM 20 for final FAb ISP.

The SRM-20 is one of the most used machines in our FabLab. Its a tiny desktop CNC that can mill PCBs, create 3D models on wax and even scan in 3D. It is preferred for making PCBs using FR-1 boards as it doesn’t leave any chemical wastes.It has a small bed which moves in the Y-axis, a Tool head which moves in the X-axis and the end effector which moves in the Z-axis. It supports many milling bits and is easy to use.


Setting of machine for milling

First We set the sacrificial board on existing pcb board to prevent the damage of bits then I placed my copper clad on which I have to mill my programmer, For this I took the single sided fr-1 board. and I took the double sided tape and put on that board and stick that board on the bed of SRM-20 and tight the bed equally all side.then check the bed level using bubble leveler

then select ecxact Endmill(bit)for process.there are no.of bits used for milling and cutting of pcb board but we are using the (1/64 ")bit for milling and (1/32")bit for cutting the board.then fixed the bit to collet.

Milling Bit(Endmill

Milling process


Vpanel

Vpanel is software used for setting of SRM-20 ,because SRM-20 don't have any adjustable knob so we have to set axis from Vpanel.

First download the Vpanel,then Switch on the SRM-20,set the collet and axis(x,y,Z)position using Vpanel,then make the desired position as your origin fron pressing right hand side virtual buttons,then at srm-20 as shown in figure

Vpanel

Vpanel

lets go to the milling section

Milling the pcb board

I am using the onine fab module to make rml file SRM20 machine.

Now,SRM -20 and Vpanel is set now time to import image for milling.For SRM-20 we require.rml file I downloaded png image from the Brian's site now time to conver it in rml for conversion I used 'online Fab module'.or MODS

Group Assignment

Mods

In this group assignment task,we have to characterisize our PCB milling machine, I did it with Vaibhav & Pooja,we follwed same steps as I did in indivisual assignment for converting and importing the png image to .rml in "Mods" ,we did the line test

We had a guest lecture of Previous fab academy student Mr.Rohan Rege on MODS. MODS is the advance version of FABMODULES which is works by connecting nodes to develop each process.In our case we are going to use this for converting imageges from png to rml .

steps for mods
  • 1.Opened Mods in browser.
  • 2.Then Right click anywhere and select PROGRAMS -- select OPEN SERVER PROGRAM
  • 3.3.Selected ROLAND > MILL > SMR20(choose the machine you will use)
  • We need to add another module to make it save the file automatically. So we need to look for the program/component that outputs the file.

  • 4.Right clicked anywhere in the white space and select MODULE > OPEN SERVER MODULE > SAVE FILE . Connect the elements by clicking on OUTPUT of RolandSrm-20milling machine and clicking again in INPUT of save file module to make the connection/ wiring between them.
  • 5.Open your traces image file.Go to READ PNG MODULE SELECT- PNG FILE - .selected traces image.
  • 6.SET PCB Default module click in MILL TRACES.
  • 7.Mill Raster 2D module click in Calculate 8.Done.The file will be saved automatically into your download folder.
  • The saved rml toolpath of png image will look like this.

    After milling the line test part looks like this

    Line test

    Process to convert images using FAB module

    1.Go to online fabmodule.

    2.Import image,set SRM-20 machine

    3. Make X,Y,Z to zero and Zjog-12

    4.Then calculate and then png image will converted into .rml we can see its traces

    5.Download the .rml image and give to Vpanel

    fab module

    Rml trace

    After calculation we get rml file as

    Rml trace

    with taking this all precaution my bed is ready to mill.

    Import this downloaded .rml file to Vpanel,then press output button from Vpanel,then milling process starts.

    for cut the board we have to make another border png file which can be shown below

    Rml trace9 (PC-Pooja Jadhav)

    I had good expirience while handling the modela & SRM 20 machine.both have their advantages and disadvantages as below.

    Modella Vs SRM-20

    1.SRM -20 have safety features,that it can't operate if door is open.

    2.We can start the resume print from last position in SRM while in Modella we can start from resume

    3.Stop command aborts the data in Modella

    4.We have to remember the last coordinate in Modella


    After milling pcb ,most tricky and important part is soldring

    Stuffing the componant

    Till now,I soldered only through hole component on PCB ,so soldering the SMD component on PCB is new for me still I know the soldering tricks I don't struggle more.

    List of all componant used with its characteristics

    The high-performance, low-power Microchip 8-bit AVR RISC-based microcontroller combines 4KB ISP flash memory, 256-Byte EEPROM, 256B SRAM, 6 general purpose I/O lines, 32 general purpose working registers, one 8-bit timer/counter with compare modes, one 8-bit high speed timer/counter, USI, internal and external Interrupts, 4-channel 10-bit A/D converter, programmable watchdog timer with internal oscillator, three software selectable power saving modes, and debugWIRE for on-chip debugging. The device achieves a throughput of 20 MIPS at 20 MHz and operates between 2.7-5.5 volts.

    ResistorIt resist the flow of current

    Capacitor-It stores or hold the charge

    Zener diode-A Zener diode is a particular type of diode that, unlike a normal one, allows current to flow not only from its anode to its cathode, but also in the reverse direction, when the so-called "Zener voltage" is reached.

    Soldring

    Soldering, is a process in which two or more items (usually metal) are joined together by melting and putting a filler metal (solder) into the joint, the filler metal having a lower melting point than the adjoining metal.

    Soldering station

    Our Soldering platform :A soldering iron is a hand tool used in soldering. It supplies heat to melt solder so that it can flow into the joint between two workpieces. A soldering iron is composed of a heated metal tip and an insulated handle. Heating is often achieved electrically, by passing an electric current (supplied through an electrical cord or battery cables) through a resistive heating element.
    Solder Lead:Solder in the wire format which is easy to put near the components to be soldered
    Flux: Solder Flux ,In high-temperature metal joining processes (welding, brazing and soldering), the primary purpose of flux is to prevent oxidation of the base and filler materials.
    Tweezer:It is a small tools used for picking up objects too small to be easily handled with the human hands.
    magnify glass:to see the small componant.

    Soldering


    Programming

    The most important part of FABISP is programming

    I connected the one more programmer board called "USBASP" to my fabisp as programmer to program my board

    Then I strictly follwed the instructions for programming given by Brian's document.

    For programming on windows I install 4 different software like a. Make.exe 2. avrdude 3. avr8-gnu-toolchain-installer-3.5.4.91-win32.any.x86.exe 4. zadig and download firmware_45 to store all data.all files save in programs files.

    Avrdude

    Windows where to locate all of the tools you've just installed when you type their names on the command line. Go to the Start menu and open the Control Panel, then go to System. From the left pane, choose "Advanced System Settings". Under the Advanced tab, click the "Environment Variables" button

    Under User variables, select "Path" and click the Edit button. If you don't already have a variable called "Path", click the New button to create it, enter "Path" without the name, and fill out the value as described below.

  • C:\Program Files\avr8-gnu-toolchain\bin
  • C:\Program Files (x86)\GnuWin32\bin
  • C:\Program Files\avrdude

  • After this steps I Installed Drivers for my Programmer.I downloaded Zadig.then Plug in my programmer, and select the "USBasp" device in the list.The driver you want to install (to the right of the green arrow) is either libusb-win32 or libusb0. Click the "Install Driver" button.

    I connect the all pins of my ISP as shown above to USBASP
    MOSI-MOSI
    SCK-SCK
    MISO-MISO
    VCC-VCC
    SCK-SCK
    RST-RST

    After that I opened the Git bash to enter the command I follow the below all command,all commands have their own significance

    i first download the firmware the firmware contain the make file and we have to target that file.I download the firmware and extract that folder,

    I used three cammands for Checked to make sure that the commands I installed work ok or not.

  • Type make -v and press enter
  • Type avr-gcc --version and press enter
  • I Connected programmer to a USB port and type: avrdude -c usbtiny -p t45 and press enter.
  • I Downloaded the firmware source code from Brian and extract the zip file.Opened terminal program and cd into the source code directory. Run make. This make cammand build the hex file that will get programmed onto the ATtiny45. When the command completes.In this folder I opened Make filewith Notepadd++ and change the name USBTiny ti usbasp.

    This error occurs due to loose connection of fab ISP,for proper fixing I connect FAB ISP to different port of laptop.


    I go to the make file in that I edit the name of programmer USBASP to FABtiny.then execute the all commands

    # 'make flash'- uses the programmer to load it onto the target chip.

    command execution1

    # 'make fuses'- programs the fuse bits on the target chip.

    # 'make rstdisbl' -blows the reset fuse.

    command execution3

    # 'make clean' -removes all autogenerated files.

    now my fabisp is ready to work as a programmer

    USBASP

    Errors & Solution

    While burning the programme in my programmer USBtiny,I got error in driver installation ,then I again checked continuty,I soldered pcb once again,I thought my pc is not working ,then I tried my programmer on puja's pc still error ocured,then I found my silly mistake my programmer had loose connection,oh god....finally its done


    Flexible Electronics

    In this task I used vinyl cutter for cutting my flexible FABISP,I used png image downloaded from Brian's site,the I placed copper sheet on OHP sheet then I got my PCB I also struggled lot in this task because paper roll was not setted properly ,after reducing force it works

    Flexible PCB(PC-Manoj Sahukar)

    Summary

    In this session I learnt milling machines like modella and SRM-20,I learn the SMD components and their soldering I learnt the programming to usb ,In short I made the my own programmer ,FABISP.