The group assignment of this week is to characterize and document our lab milling machine's design rules; Characteristics include feeds, speeds, plung rate, depth of cut and tooling. While the individual assignment is to build and test an in-circuit programmer byt milling and stuffing the PCB. Optionally, trying other PCB processes.

Machines used:

This week assignment content:

Files used for this week:


Milling Machine

The milling machine used for this assignment is the Roland SRM-20.

srm20

Safety Precautions:

  • Close the machine door while settings the origin and while milling.

5.1. Characterize the design rules for your PCB production process.

Click here to go to this week group assignement page.

My group assignement role:

For this week group assignment, our lab instructor Duaa helped us and gave us instructions about how to use Mods, milling machine, and how to install the milling tool. We did two tests using two different milling bits, which are the 1/64 and 1/32.

What I learned from this group assignement:

  1. Working in a group will lead to sharing experiences and better results.
  2. It is very important to organize the work between the group members.

5.2. Make an in-circuit programmer by milling and stuffing the PCB, test it.

This week individual assignment is about making In Circuit Serial Programming (ICSP) programmer. It is also called In System Programming (ISP), which is basically a method to program microcontrollers chips. Three options were available to choose from, which are ISP (AVR), UPDI (AVR 0,1-series), and JTAG (ARM). For me, I have chosen the JTAG (ARM) programmer using ATSAMD11C14A. The interface for this programmer circuit is JTAG/SWD, it is a serial wire debug of 10 pins (0.05").

Step 1: Prepeare the file with Mods:

1- I have started by dowloading the traces and interior png files from fab academy site.

traces

interior

2- Then I have used Mods to convert the traces.png image to a file that the milling machine can read. It can be done with FabModules as well.

3- When you open it first, right click anywhere in the white space and select programs » open server program.

4- Uneder SRM-20 choose PCB png.

step3_4

5- From the read png (left upper), click on select png file and select the file you want to mill.

6- From the set PCB defaults (upper), click on mill traces (1/64) or mill outline (1/32).

step5_6

7- From the Roland SRM-20 milling machine (lower left), set origin: x,y, and z to 0.

set_origin

8- Right click anywhere in the white space and select modules » open server module.

9- Uneder file choose save and a save file module will appear.

open_module_file

10- Click on outputs file from the Roland SRM-20 milling machine (down left) and the file(object) from the save file module to connect them.

save_file

11- To download the .rml file, click on calculate from the mill raster 2D.

calculate

Step 2: Milling process:

1- Add double sided tape on the copper sheet and stick it on the milling machine bed after cleaning it.

2- Use the leveling tool to make sure that the copper sheet is perfectly straight on the bed.

leveling

3- Turn on the milling machine and open the Roland software.

4- Attach the traces milling bit (1/64) to the milling machine.

5- Determine the location you want to be the origin point using the x,y, and z arrows. Preferably the lower left point.

6- Set the Spindle Speed cursor to the middle of the second half of the line.

7- Click Cut, choose the traces rml file and click Output to send the file.

roland

8- After traces milling is done, set up the origin point for the interior (i.e. frame) file. To do that, keep the same x and y origins and re-origin the z point.

9- Change the milling bit to 1/32 so it can cut all the way through and repeat the same previous steps.

Step 3: Solder SMD components:

Components used:

P/NDESC
ATSAMD11C14A-SSUTIC MCU 32BIT 16KB FLASH 14S0IC
LM3480IM3-3.3/NOPBCT-NDIC REG LINEAR 3.3V 100MA SOT23-3
 RES SMD 0.0 0HM JUMPER 1/4W 1206
 CAP CER 0.1UF 250V 10% X7R 1206
 CONN HEASER SMD 10POS 1.27MM

I used a new technique for soldering, which are explained in the following steps:

1- Use the solder paste flux pen to stick the components on the circuit board and enable the solder to adhere to the clean metal surface, rather than forming beads. Also, it used to serve as a heat-transfer medium.

solder_paste_flux_pen

2- Place the SMD components on its places.

3- Add Solder Paste on the pins you want to solder.

solder_paste

4- Heat up the soldering iron and add some soldering material to it.

5- Pass the soldering iron on top of the pins and you will notice that the soldering material sticking on the pins and the copper part of the board only (because copper is a surface tension material).

6- Remove the extra copper on the fornt of the USB contacts edges so it connect well when plug in to USB port. Use a cutter or a knife to remove it.

cutter

Final result:

The following figure compared the circuit before removing the extra copper on fornt of the USB contacts edges and after removing it.

final_circuit

Step 4: Install the programmer

1- To install the programmer on my PCB, I used J-LINK EDU Mini, which is designed to be used for educational purposes only. I have connected it to my PCB and connect them both to my laptop.

J-LINK

2- To verify programmer installation, open Device Manager and you should see USB Input Device under Human Interface Devcies list.

device_manager

3- To use J-Link with Atmel Studio, I have istalled J-Link tool to Atmel Studio.

To do that, open Atmel Studio » Tools » Device Programming » Tools (J-Link) » Device (ATSAMD11C14A) » Interface (SWD) » Apply.

The Device signature will be shown (0x10030106) and the Target Voltage (3.3 V).

Go to Memories section, check the Earse Flash before programming box, chose your binary file, and click program.

device_signature

Step 5: Use the progammer

After the programmer installation, I should be able to use my PCB to program other chips. To test that I did the following steps:

1- Connect the PCB programmer to the laptop USB port

2- Download the debugger EDBG.

3- Try to run it. It may not run if you are using Windows. So, try to run it from the command line as following. To show the help list type:

-h

to_enter_edbg

4- In the command line, type the following to list all available debuggers.

edbg -l

In this case, only my PCB programmer cirucit will be shown. Memorize its code (5ADD0BEA).

list

5- Connect my PCB programmer to another new PCB and connect both of them to my laptop as the following image shows:

programming

6- Again, in the command line, type the following to list all available debuggers.

edbg -l

In this case, both of my PCB programmer cirucit and the new PCB will be shown.

debuggers_list

7- To use my programmer circuit to program the other circuit, type the following code:

edbg -t samd11 -bpv -f free_dap_d11c_mini.bin -s 5ADD0BEA

programming_code

Now programming is done !


Problems faces and how I fixed them

1. Problem:

First when I connected the circuit board to my laptop USB port, the voltage regulator overheated and smoke appeared from it.

1. Solution:

To discover the reason for this issue, I have used the digital multimeter to do the continuity test and discover any short circuit available. And since the traces on the circuit board are very small, I have used a microscope camera to see them clearly. Then, I have discovered that there is a short circuit, which results in the heat.

testing

In addition, I found that there is a warning on the solder paste tin, which says that it is not suitable for use with integrated circuits (IC). Moreover, solder paste should not be used alongside normal solder (soldering by hand using solder wire). To solve that issue, I have cleaned up my circuit with alcohol to remove the solder paste residue on the circuit .

clean

2. Problem:

Loose connection between my circuit and the J-Link device.

2. Solution:

I have take off the input 10-pins header from my circuit and solder it again. After that, connection became stable.


What I learned from this week assignment:

  1. While soldering, don’t hold the circuit by your hand. Instead, use the helping hands soldering tool to hold it.
  2. Be patient when soldering. Keep the soldering iron on top of the soldering place for enough time to make sure that the solder is sticked well.
  3. Mill the traces with 1/64 milling bit and the frame with 1/32 milling bit.
⤧  Next post 6. 3D Scanning and Printing ⤧  Previous post 4. Computer-Controlled Cutting