5. Electronics production


In this week we will make our own microcontroller using SRM-20 for milling a PCB then a solder to solder our components on the PCB.


User manual

Milling :

I highly recomend this site beacause it has alot of detailed informations about milling.


(1) we made sure that we have a sacrifing surface then we stiked a PCB using a double sided.


(2) we used a leveler in all corners to make sure that the PCB is leveled.

vi vi vi vi

(3) we inserted a new milling tip to the machine then we screwed it slowly and easy.

vi vi

  • 1/64 SE 2fl altin coated s/c microgram bit will be used for milling PCB.
  • 1/32 SE 2fl altin coated s/c microgram bit will be used for cutting through PCB.

I was told that “Fl” = flute

When I heard flute for the first time I thought of




(4) we choose our X/Y origin point by moving the bit using the program arrows ,after that we choose our Z origin by moving the bit down tell the tip reach the closest distance to the surface of the PCB then releasing the screw of the bit tell it touches the surface then tighting it again.

vi vi

(5) we had to run a usual test which was to mil a PCB with different thickness to identify the limits of the machine:

Open fabmodules then click open format >> image >> chose your png image “your circuit design “. vi

Output format >> Roland mill (.rml). vi

In process we will have to select the proper bit for our milling this depends if we want to cut through the PCB or we want to mill it ,the smaller the tip the more detailed milling we can get for our test we will mill using >> PCB traces (1/64) and cut throgh using >> PCB outline (1/32) Before we click on calculate we should make sure that :

1-output machine SRM-20 and x0=0 y0=0 z0=0 because we already set our origins.

2-For PCB traces (1/64): zjopg - 12 Speed - 4 or 3 mm/s for new end mills

3-For PCB outline (1/32): zjopg - 12 Speed - 0.5

For PCB traces (0.010) vi For PCB traces (1/64) vi For PCB outline (1/32) vi vi

Then we would save the file and upload it to the software “V panel for SRM-20 ” by clicking cut >> add >> start.

when we made sure that the machine is running correctly we started milling our own PCB by following the same stips.

here we uploaded the png that we wanted to mill vi vi

here we uploaded the png that we wanted to cut vi vi


vi vi

Soldering :

Tips :

I thought that if I got out the components from their drowers this would make my soldering faster ,so I got them out and and placed them in the table ,because they are small I circuiled them using the soldering wire so they dont get lost.

Some youtube tips on soldering.

Tools needed


Soldering iron (thin tip is prefered)

Solder (0.5 mm)

solder flux pen



Solder fume extractor

Braid for desoldering

Components needed

1x ATtiny45

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

You have to make sure that you know the polarity of the zener diods and the LEDs.

Start soldering from the middle components to the side components.

vi vi vi vi vi

problem faced :

While using the electronic map from this site I labeled the polarity of all diods. I was wrong with two diods polarity label so I removed them by desoldering them using solder wick and then resoldered them with the right polarity.


While I was removing the diods I notised that a part of the PCB path came out with it I solved this issue by adding a conductive wire to act like the path.

vi vi

programming :

I highly recomend this site beacause it has alot of detailed informations about programming.

Steps for Mac

(1) Download CrossPack and firmware source code

(2) Run cd downloads >> cd fts_firmware_bdm_v1-3 >> make This will build the hex file that will get programmed onto the ATtiny45. When the command completes, you should now have a file called fts_firmware.hex

(3) Change programmer type that you will use to program the ATtiny45. Open fts_firmware_bdm_v1.zip >> Makefile change ” PROGRAMMER ?= usbtiny ” change usbtiny to the type of programmer you’re going to use .Then save the changes. In this case, the programmer I used was avrisp2.

Small translucent blue programmer: avrisp2

Large translucent blue programmer: jtag2isp

White box with blue stripe: atmelice_isp

(4) Using the two connections wire your PCB to your pc using USB port and in the other side ‘header’ to the programmer “avr isp mkii”. If your connection is right you have to see the color of the programmer if it was orange this means that the oriantation is wring or that you have a wronge connection. I the color was green this means that we are good to continue.


(5) Run make flash To erase the target chip and program its flash memory with the information of the hex file we built.

(6) Run make fuses

(7) Open Apple System Profiler (Apple Menu → About this Mac → More Information; or from the Utilities folder). Select USB from the list on the left, and you should see the USBTiny listed as a device on the right. If it shows up, it is working properly.


(8) Run make rstdisbl

(9) Remove jumper solder