Electronics Production

Introduction

Our exercise for this week was designing and fabricate an own ISP programmer. This assignment can be divided into 4 parts:desgining, milling, soldering and programming the board as an ISP programmer. I used Brian Mayton's design and documentation. In addition, my classmates Matthias and Anke finished their homework a bit earlier and prepared really great and detail documentation, which I also used. We also were asked to evaluate our milling machine concerning 'PCB Production Specifications'.Information about this group task can be found here.

Introduction to Electronics & First Soldering experience

This week started with an introduction to electronics, soldering class and example of designing with Eagle from our local instructor.

General Steps of Electronic Production

  • Design schematic and board files in EAGLE.
  • Use CAM processor in eagle to produce BOT, .DRD, .TOP, .BOA files.
  • Prepare for milling with CircuitCAM.
  • Using the PCB milling Program BoardMaster.
  • Milling itself.
  • Prepare for soldering and assembling.
  • Assemble and solder components to PCB.

The FabISP

The most challenging part during the design was finding the correct digital components that represent the desired components on the real world. So I double checked all the components in order to avoid mistakes.

I started with Schematic:

Then I created Board:

Then I moved it all to a proper place and did the connections and dimension:

All the schematic and board files can be found at the very end of this documentation.

Cam Processor

Quick instruction and files(.CAM and .drl), that would be needed during this phase could be found here.

This is my step-by-step instruction:
  • Go to CAM processor

  • Open JOB

  • Process Job

  • Here is files for future work:

CircuitCAM Software

Before the board can be milled it needs to be transferred into a LMF file which can be opened by the boardmaster software used by the milling machine. This is instruction for that part:

  • Import the four created files from before (.BOT, .DRD, .TOP, .BOA).
  • Opened files in CircuitCAM.
  • Disable the three attributes with a cross by clicking on the check mark.

  • Execute 'Konturengenerator'.

  • Enable the three attributes from previous step.

  • Click on the highlighted symbol in the picture to execute 'Rubout aller Layer'.:

  • Click on the highlighted symbol in the picture to execute 'Isolieren aller Layer'.

  • Click on the highlighted symbol in the picture to execute 'Exportieren LMD Datei'.

Board Master Software & Milling

Our Fab Lab has a LPFK milling machine. With the software "boardmaster" you can control the milling machine. Detailed instructions and recommendations of the milling process can be found here here. Basic for a single-sided board with SMD parts steps is here:

  • Using arrows in order to move the board as close to the edges as possible, so you don't waste unnecessary material, and so others can still use the PCB sheet for their designs after you.
  • Here is all the steps that are possible with our milling machine. For single-sided board with SMD parts you only need MarkingDrills, DrillingPlated, MillingTop, DrillingUnplated and CuttingOutside. For all of them you should click "All+", then "Start". For each Phase once it's finished, you get a confirmation box showing the duration of the mill. Click OK and do next.

So, here is my ISP:

After that I did the soldering. So, I started with collecting all the needed components:

  • 1 x Attiny 45
  • 1 x 100nF SMD Capacitor
  • 2 x 1kΩ SMD Resistor
  • 2 x 560Ω SMD Resistor (Brian used 499Ω)
  • 2 x 56Ω SMD Resistor (Brian used 49Ω)
  • 1 x red SMD LED
  • 1 x green SMD LED
  • 2x 3.3v zener diodes
  • 2 x 3 SMD Pinheader
Then I started soldering:

As you can see in the image bellow, sometimes the SMD resistor stuck to one pad and it is really annoying. However, with more practice ot becomes more easy yo solder properly from the very beginning.

What is more, I soldered Attiny the other way around. That is how I found out the obvious mapping between the board file from eagle and real Attiny. There is a round, that helps to map it properly:

Programming

Actually, this was the most challenging part of assignment for me, especially because my program experience is not that good. But in our FabLab people are so supportive, so I got answers and help with all my questions and problems. As well as Anke, for program the board as an ISP I followed Brian's steps. After downloading all libraries and drivers(more info about it can be found here), I connected the Arduino Uno to the laptop and then the FabISP to the Arduino Uno to program it as an ISP. Assure to connect ground to ground Pin etc.

Next step was to change the code to suit our setup (see image below).I highlighted all changes I made in the code .

After that I run the following commands.

* make

* make flash

* make fuses

Here you can see what happened after * make flash.

And the Terminal Output I got:

Afterwards I checked if my FabISP was now recognised as a USB device by my computer. For safety reasons I used an USB cabel, where I connected my FabISP. I checked under 'Apple symbol > About This Mac > System Report > Hardware > USB' if the device is shown.

Files


Download .sch file

Download .brd file