WEEK 4

ELECTRONICS PRODUCTION


Assignment

  • Make the Fab (tiny)ISP in-circuit programmer

Learning outcomes

  • Describe the process of production and programming
  • Demonstrate correct workflows and identify areas for improvement if required

Assignement's files

This week’s assignment was to make the FabISP, a PCB, wich we will use during the Academy to program other microcontroller. Starting by dowload the PNG file that has been used to mill the circuit board froma a copper plate. The milling machine is a ROLAND SRM-20

  • Table size (LxP): 232.2 x 156.6 mm
  • Distance from collet tip to table: 232.2 x 156.6 mm

The machine will use a a tip of 1/64 size to mill from the traces , once the traces will be done it will need a tip of 1/32 in order to cut the board.T

to generate the file I used the Fabmodules

In our lab we are using the Roland MonoFab SRM20 so we need a rml file

Machine settings

  • Open fabmodules.org
  • Click on Input Format
  • Choose Image (.png) and Upload Image
  • Click on Output Format and choose the machine (Roland Mill (.rml))
  • Setting machine: machine SRM-20; Xmin 0; Ymin 0
  • Click on Process and choose (PCB traces(1/64)) or (PCB outline(1/32))
  • Change offset to 5 (this is a personal setting)
  • Click on Calculate
  • Save

Milling the board

I secured the board in the milling machine with double sided tape to keep the model from moving in the milling machine

Machine settings

  • Turn on the machine for the heating, at least for 20 minutes
  • open Roland Vpanel. Load the .rml file
  • Set the X,Y,Z axes

SMD Soldering

This was the hardest part of the assignement, soliderind so tiny components on traces kept a lot of time. Some traces was damaged by the heater so i had to repair them by adding some littel copper wire

Board programming

In order to program the board I used a USBasp - USB programmer for Atmel AVR controllers

Download the firmware from the Fab Academy : wget http://academy.cba.mit.edu/classes/embedded_programming/firmware.zip

and unzip it

change a line in the Makefile to tell to the system to use usbasp: AVRDUDE = avrdude -c usbasp -p $(DEVICE)

command : make clean

command : make hex

attach the FabIsp to th programmer

at the end , command: make program