Electronics Production





    Task of the week

    What I have did

    Group assignment :

  • In group assignment I have studied the design rules for PCB production process by milling the test pattern on SRM-20 milling machine.

  • Characterize design rules for PCB production process.

  • Download the PNG files of trace aand cut of ISP from Embedded programming week of " Fab academey 2020 " page.

    Individual assignment :

  • Milled the In-circuit programmer(ISP) on SRM-20.

  • Mill the design of In-circuit programmer on SRM-20.

  • Soldered the components on PCB by using different tools.

  • Stuffing of differnt electronic components on the raw PCB.

  • Have programmed it to make it to work as a programmer for other PCB's.

  • Test it.

  • Have tested it.


    Week 4 :-

    In this week we have to characterize the design rules for the PCB production process in our lab. In which first we have to check different parameters of SRM-20 milling machine like co-ordinate system, working area, offset, track limit for milling, the speed limit in our group assignment.

    In the group assignment we have find out the width of traces that we can mill on SRM-20 machine in our lab. For more description about trace width please click on the above link of group assignment. In which the design rules for PCB production/milling process is explained. I have shown the PNG image of traces and cut in below image

    Rang of width we can be cut on SRM-20 machine in our lab :-

Week1-1

    "SRM-20" : -

    In Vigyan Ashram we have monoFab SRM-20. It is machine on which we can mill a PCB (Printed circuit board). This machine have a fully-enclosed cabinet. It reduces the spread of dust and noise in the surrounding. The cabinet of SRM-20 is made of glass, due to which we can see the progress of milling. It has an intelligent safety interlocking door which can automatically pauses the machine when it is open. This feature will avoid possibility of any human harm or accident. But this machine does not have the provision of light in it. If we have to mill the pcb at night we can not see the progress clearly due to absence of light. Because of which many time we can not see the errors in our board and the damage of milling bit.

Week1-1

Week1-1

    Individual assignment : -

    For our individual assignment I have milled an in-circuit programmer by using SRM-20. Also have mount different electronic components by soldering on the raw PCB. Have program it with Windows and Linux operating system and also have tested it for programming another programmer. In addition to this we have also studied various other programmers like Sean,Alex,Tomas,Jonathan,...etc. To know something more about ISP.

    Steps for milling ' IN-CIRCUIT PROGRAMMER ' : -

  • Download available circuit design from "Electronics Production Week" page from the schedule of "Fab academey 2020".

  • But SRM-20 requires .RML file to process the commands.Therefore, we have to convert that file to .RML by using “Mods”.

    Mods : -

    It is acts as a convertor between our operating system and machine(SRM-20). We can also use mods for making a program for any machine as per our requirement. If we want any additional feature in our machine then we can build a program for our machine in MODS. We can use mods by installing it in our operating system or directly on web-browser by using ‘mods.cbs.mit.edu.’ command.

  • Here I have use Mods online. Then right click on mouse, a module is get open on the window.

  • Then follow the steps to open the window 'Mods'.

  • Select-programs-open server program.

  • A branch diagram is get open on the screen which is a combinations of different modules as shown below. Then click on ‘Select png file’ option in the first module to drag the ‘trace’ image as shown below.

    Diagram of generated program in "Mods" : -

Week1-1

  • Select the size of drillbit. For tracing the circuit on copper clad we have to choose (1/64) bit and to cut the PCB we use (1/32) bit.

Week1-1

  • Now click on ‘calculate’ option. We can see the path of our circuit in the further module of our program. In this way we can convert our png image in RML which is the language understood by SRM-20 machine.

Week1-1

  • Traced path of circuit generated in the program.

Week1-1

  • Before downloading the 'RML' image we have to set some parameters for machine like speed, origin across X, Y and Z co- ordinates,and a jog.
    'Jog' : - is the parameter which defines the height at which the header should travell in the space during milling operation. It is important to set the jog limit because it will set the time at which our tool(bit) should set in the environment to save it from damage and also traces are generated in the form of lines on the copper board so our tool should stand in the space before tracing next line.

    Setting the Co-ordinate and speed limit in module : -

Week1-1

  • Now we have to download that file from browser to our windows operating system. For that we have to delete the ‘ Websocket device’ module first and then click on right button of mouse, a module get opens. Select, module, click on open server module, here select save option from the list.

Week1-1

  • Save module is openes on the screen.Click on the input of save module and output of SRM-20 to connect it with each other to save the image in the RMLformat.

Week1-1

Operating SRM-20 using V-panel : -

  • For giving commands to SRM-20 we use V-panel software. It is acts as a source between V-panel and SRM-20 macshine. Open V-panel on our operating system.

  • Set origin across x,y and z co-ordinates by using buttons as per our requirment. Choose the co-ordinates properly to utilize the area on copper clade. So that we can reuse the same clade for next operation.

Week1-1

  • Now click on cut button.A dropdown window get opens on the screen. First delet all existing files in the window and select the file(trace file) we want.

  • And click on output button. In this way we can give the commands to operate our machine.

Week1-1

    Difficulty that we have faces during milling process : -

  • When I have started milling the PCB, it was not get printed on the copper clad. This is because of the uneven sacrificial layer. The sacrificial layer is the layer on the milling bed of SRM-20 on which we place the copper clad to mill the circuit on it. So to mill the PCB properly, first we have cut the piece of acrylic on the laser cutter of dimension 232.2 (X) x 156.6 (Y) mm which is the be size of SRM-20.

  • Week1-1

  • Now our machine operate according to the path we have given.



    Soldering operation : -

    Before soldering I have mention the components I have used during soldering process.

    a) 1/64 bit : -

    The size of bit desides that for which opertion we are going to use that bit. 1/64 means 0.0156mm tip size. We use this bit for milling the traces on PCB

    b) 1/32 bit : -

    To give cut command or simply to cut the required part of PCB we have used 1/34 that is 0.029mm bit. We can cut the pcb in different shapes.PCB where cutting operation requires more force. We use 0.029mm diameter bit which gives us more strength to cut the pcb.

    c) L-N key : -

    We have use L-N key to fixe the milling bit in the collet of SRM-20.

    d) Twizeer : -

    While soldering SMD components on PCB, It is very difficult to pick that specifice component and to solder it on the correct position. In this condition Twizeer will help us to pick that component easily.

Week1-1

      Soldering procedure :-

    • Now we have to stuff all our components on the copper board by soldering it.

Week1-1

  • Before soldering the components with the help of soldering metal I have applied flux on the PCB.It is usfull to made strong bonding of electronic component on the copper. I have used tin-lead metal for soldering.



  • First we have to place the electronic component properly on its footprint on the PCB and apply the soldering metal on its end to made connection.

  • My 'ISP' (Incircuit system programmer PCB is ready.

Week1-1

  • After soldering we have to program our ISP board through 'Linux' or 'Windows operating system'. I have refer the Brian's page for 'Building the FabTinyISP'

    Programming through 'Linux' :-

  • After soldering ISP we have to program our board by using following commands.Open terminal in 'Ubuntu'.

  • And use command 'sudo apt install avrdude gcc-avr avr-libc make' and press enter. Type passward of terminal.

  • Download 'firmware source code' environment source in our system.

  • Then we have to enter in the directory where we have save the ' firmware source code' by using 'cd Document' command. I have save my file in 'Document' so I

  • We have to extract this file by using 'fts_firmware_bdm_v1.zip' command and run 'make'. In this way we have build the 'Firmware' environment in our linux operating system.

  • Now we have to update our 'Make file' for the progrmmer we are going to use for programming our board.I have use 'USBASP' programmer so I have update 'My file' with 'usbasp' in the line 'PROGRAMMER ?='.

Week1-1

  • Plug the board into a USB3.0 port and connect it with our operating dec=vice.

  • Run make flash. This will erase the target chip, and program its flash memory with the contents of the .hex file built before. We can see several progress bars while avrdude erases, programs, and verifies the chip.

    Error :-

  • While running this command I got an error because my ISP was not properly connected with the system. To connect it properly my instructor has suggested me to recheck the connections and resolder the components if required.I have checked the continuity with multimeter and have applied the soldering material on tracks of board and again have tested it for programming at this time it runs properly with 'make flash' command.

  • Run the make fuses command. This will set up all of the fuses except the one that disables the reset pin.

Week1-1

  • Now we have to test the functionality of USB. For that first disconnect the programmer from the operating system and connect our ISP directly to the system. Now type 'lsusb' in the terminal, which will list USB devices connected to our operating device. We should see "Multiple Vendors USBtiny" on our list. This will confirm that our ISP is working properly.

Week1-1

    Programming with 'Windows' :-

  • I have also tried the programming my board with 'Windows. Procedure of downloading ' firmware source code' in windows is same as in 'Linux', but here we have to operate by using 'Git bash'.So first we need to install Git bash in our system.

  • Then download 'Atmel AVR Toolchain for Windows' and extract it in program file of 'C- drive'.

  • Download ' Gnu Make' and lanch the installer.I have accepted the default location for the installation.

  • Download ' avrdude'. I have unzip that file and copied it in 'C:\Program Files'.

  • We have to the path of all files we have insert in window. This is done as follow. Go to Control panel-Advanced system settings- Environmental variables-Path and add following paths of file in Edit environment variable section.
    a)C:\Program Files\avr8-gnu-toolchain\bin
    b)C:\Program Files (x86)\GnuWin32\bin
    c) C:\Program Files\avrdude

Week1-1

  • Download 'Zadig' this acts as a driver.In this we can see the connection of our 'ISP'.

Week1-1

  • We have install all driver files, now we have to check whether it works properly. So run the following commands one by one in 'Git bash'.(make)-(avr-gcc)-(avrdude).

Week1-1

  • After adding all these commands we can see certain progress on the screen.

Week1-1

  • Now we have to extract the 'firmware source code' file. So use 'make' command.

Week1-1

  • We have to open the extracted file of 'firmware source code'. I have open that file with 'Wordpad' to edit it.

Week1-1

  • We have to check wether our ISP is connected properly. So go to Contol panel-Device manager, we can see our ISP name 'USBtinySPI'.

  • Week1-1

  • This is the ckeck result during programming on window with 'Programmer'.

Week1-1

    Learning out-comes :-

  • In this week we have studied various characteristics of SRM-20.

  • How to solder small electronic componets on raw PCB board.

  • How to operate SRM-20 by giving commands using our computer.

  • How to program our board by using Linux as well as Windows operating system.

  • And, also how to program other PCB by using our ISP as a programmer.

Creative Commons License
Solar Automatic Shredder by Tejswini Chaudhari is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License