Electronics Production

Printed Circuit Board

For this assignment, the purpose was to reproduce a Printed Circuit Board (PCB). The goal was to engrave the board using Fab Modules and then solder the components. At the end we had to test and program the board using an Arduino Uno Board and the Arduino Software. To complete the Assignment we needed to install Autodesk Eagle, Gimp (or a similar picture editing program) and the Arduino IDE Software.

A printed circuit board (PCB) is a board made for connecting electronic components together. It is made by combining different sheets of non-conductive material, such as fiberglass or plastic, that easily holds copper circuitry. The electronic components are soldered onto the PCB where appropriate. PCB is also known as printed wiring board (PWB) or etched wiring board (EWB). PCBs are found in nearly every electronic and computing device, including motherboards, network cards and graphics cards to internal circuitry found in hard/CD-ROM drives. There are different techniques that can be used to create a PCB. For example etching, sewing and miling. Furthermore there are also various materials that can be used to produce a PCB such as FR2, FR4, aluminium, paper or cardboard and even different kinds of textiles.

Creating the Circuit Layout File

The reproducing board is provided by Daniele Ingrassia the teacher of this course. After installing all the programs we need for the assignment. I opened the obtained BRD file with Autodesk Eagle. The Board is not complex and it's only purpose is the learing process we obtain by creating the board and programming it later using the Arduino Software. The image shows that the board still has a lot of details on the electronic components, that need to be blend out, to obtain a perfect ciruit layout for the miling technique.

To remove the details you first need to change the Layer Settings.

In the Layer Settings you need to disable all the Layers and only enable the Top and and the Pads Layers. Then confirm your selection.

The board still shows some details that aren't required for the miling.

To remove them you need to open the Settings. You can find them by clicking on the options in the navigation bar.

Click on misc in the settings window tab and disable all the displays with exception of the display drills check box. Otherwise you won't be able to create the drills later on.


Now you can export the file as an image and modify it with a proper image-editing program.

In the export Image window the resolution has to be 1500 dpi, the area window and you also need to check the monochrome box. Then name the file and export it as PNG.

Open the file with Gimp. With Gimp you will create the final layout for Fab Modules.

You now need to pick the rectangular select tool to create a proper perimeter. Be aware to leave some distance between the circuit and the perimeter, because afterwards you will need to create the cutting path with this new layout. Then use crl + x to cut it out.

In addition go to file --> create --> create from cilpboard to create a new file with the image you just cutted out. Subsequently save the file as inside.png.


Thereafter you use the image to create the cutout path. Choose again the rectangular select tool to create the perimeter for the cutout.

Moreover round of the edges of the perimeter by using the rounded corners tool with a radius of 15%.

Again use crl + x to cut out the interior of the image. According to that fill the inside with white color by clicking on edit.

Now save the image as outside.png.

It's time to create the RML file for the milling machine. To do this you use Fab Modules. After importing the image choose roland mill (.rml).

Then select the process PCB traces (1/64).

Choose the machine MDX-40.

Furthermore set up the following configurations for the engraving process:

• x0 : 0 mm

• y0 : 0 mm

• jog height : 5 mm

• cut depht : 0,0 mm (regulates the height of the tool)

• tool diameter : 0,2 mm (this is the milling tool you want to use)

• offset overlap : 55%

Important: do not change the other parameters that are entered automaticly.

Then click on caluclate and save the file.

Repeat the steps for the cutting process by using the following settings:

• x0 : 0 mm

• y0 : 0 mm

• jog height : 5 mm

cut speed : 1 mm

• cut depht : 1,9 mm (because you have to be sure that you are cutting out the board)

• tool diameter : 1 mm

• number of offsets : 1 (because you just need one path to cutout the board)

Using the Milling Machine

Below you can see the milling machine I used for the assignment. CNC milling is a specific form of computer numerical controlled (CNC) machining. Milling is a process similar to both drilling and cutting. Like drilling, milling uses a rotating cylindrical cutting tool. The milling machine is able to move along multiple axes such as the 3D printer. Most machines offer from 3 to 5 axes, providing performance along at least the X, Y and Z axes. Moreover almost any material can be used in a CNC machine. It really depends on the application. However, most CNC work with metal materials.

Before you start with the milling process, it is very important that you choose the appropriate tool for the material you are going to use. As I mentioned previously I used a 0,2 mm tool diameter for the engraving and a 1 mm tool for the cutting out. After setting up the files for the milling process, you now need to move the machine to the point where you want to start milling.

You do so by using the program below. You need to mark the check box of the Set XYZ Orign and then start to move the machine by using the arrows. When you move the Z axis pay attention to the speed, otherwise you could breake the tool, if you go down too fast. Furthermore use the multimeter consistently to check if the tool touches the surface. Once the multimeter recognizes a connection click on the apply button. In addition set the rpm to 15000. Now select cut and send your engarving file to the machine.

While the machine is engraving, make sure that the drawing of the curcuit is deep enough.

Now use the vacuum cleaner to get rid of the copper dust.

Below you see the completed engraving process.

For the cutting out you need to change the tool and then move to the XY Orign. Afterwards you need to adjust the Z axis as you did before and then send the cutting file to the machine.

Again you need to use the vacuum cleaner to get rid of the copper and the wood dust.

Below you see the finished milling board.

Now you need to drill the holes for the through-hole components.


Soldering the electronic components

Before you start with the soldering, you need to set up the soldering tool to the necessary temperature, usually above 300 degrees. First of all you have to solder the microcontroller as it's the most important component of the board. Be carefull with the microcontroller, because if it's exposed to too much heat it could get destroyed and then you have to start over. The most difficult part is to attach the component to the spot you desire, ones it's attached the soldering is easier. Don't be afraid to use to much soldering material, as you can always remove it with a copper wire. Insure yourself that all the pins of the microcontroller are soldered correctly and use the multimeter consistently to check the connections.

After a while I figured out the best soldering technique. First you need to heat up the board and then add some soldering material on the pad. The soldering needs to be shiny as you can see above. Next place the component to the soldered pad and heat it up. When you have through-hole components make sure you first heat them up and then add the soldering material. In this way the soldering material gets really fluid.

I faced some problems while soldering the components. As some parts of the board where exposed to too much heat, I lost a few connections in the circuit and had to add some thin thread to reconnect them. Below you see the finished PCB.

Programming the PCB

In order to give the microcontroller functionality, the Arduino Uno needs to act as a programming board. For a start you need to connect the Arduino Uno board using the USB cable to the PC and open the Arduino Software. Identify the board as Arduino Uno by going to tools and select the proper port.

Thereafter you need to open the file that makes the Arduino board act as a programming board. Go to File --> Examples and open the ArduinoISP program. Then verify and upload the code to the Arduino.

Before connecting the PCB to the Arduino Uno, check all the connections with the multimeter to be sure that you have a closed ciruit.

If everything is well-connected, you can go ahead and couple the Arduino to the PCB.


To program the ATtiny45 you first need some librarys. Open the preferences dialog in the Arduino software and place the following URL: https://raw.githubusercontent.com/damellis/attiny/ide-1.6.x-boards-manager/package_damellis_attiny_index.json into the “Additional Boards Manager URLs” field near the bottom of the dialog.

According to that open the board manager by going to tools. Then search for the ATtiny file and click the install button.

Set the following preferences in the tool tab:

Now open the "Blink" file by going to File --> Examples --> 01.Basics.

The ATtiny45 has a different pin configuration than the standard Arduino board, so it's important to change the pinMode value. If you look in the data sheet, you can identify the pin that is directly connected with the LED. In this case it's pin number 7.

Finally upload the code by going into Sketch and select Upload Using Programmer.

The board's LED is blinking with a delay of 1 second as indicated in the code.