The assignments for week4 were as below;
In week4, we tackled printed circuit board (PCB) fabrication, which is one of basic methods of electronics production.
Printed Circuit Board
What is Fab ISP?
The Fab ISP is an in-system programmer for AVR microcontrollers, designed for production within a FabLab. It allows us to program the microcontrollers on other boards we make.
Siting from IoT Agenda - microcontroller,
A microcontroller is a compact microcomputer designed to govern the operation of embedded systems in motor vehicles, robots, office machines, complex medical devices, mobile radio transceivers, vending machines, home appliances, and various other devices.
Siting from IoT Agenda - microcomputer,
A microcomputer is a complete computer on a smaller scale and is generally a synonym for the more common term, personal computer or PC , a computer designed for an individual. A microcomputer contains;
and housed in a unit that is usually called a motherboard .
- microprocessor (a central processing unit on a microchip )
- memory in the form of read-only memory and random access memory
- I/O ports
- bus or system of interconnecting wires
AVR Microcontroller is a kind of microcontroller, which was developed and manufactured by Atmel. Most computers have a 32/64-bit CPU running at 1GHz, with 1GB of RAM and 100 GB of storage. This microcontroller runs at 10MHz, have 1KB of RAM and 10KB of storage. However, their small size, lower power consumption and low cost make them a wide range of choices for many projects.
We used computer numerical controlled(CNC) milling machine: Roland Modela MDX-20 to mill the cupper board this week.
CNC Milling Machine
This week, we tried to make FabTiny ISP, which is a kind of Fab ISP and includes a few extra features such as a target power led and switch, a reset button and a led on the SCK line to indicate communication in progress. I discribe the fabricating process as below;
1. Milling the Board
Making the surfase of board clean
Importing milling image
Changing a milling bit
Milled copper board
If you set the parameter of Fab Module incorrectly, or set the position of the bin wrongly, the milling will not be executed completely; some copper will remain on the surfase without milling or board will not be cut as below. Actually, I had mistakes three times because the setting of the bin was too low to move smoothly.
Copper cut not enough
2. Solder the components on the board
Now, we could prepare the circuit board for FabTiny ISP, and next have to soleder and fix the parts to the board. Image as below is the blue print of it, and solder them as following instructions.
Bill of FabTiny ISP
|R1||1 Kilo-Ohm||2.2 Kilo-Ohm||SMD-1206|
|D1||3.3-Volt Zener||3.6-Volt Zener||SMD-SOD123|
|D2||3.3-Volt Zener||3.6-Volt Zener||SMD-SOD123|
|R3||49 Ohm||68 Ohm||SMD-1206|
|R4||49 Ohm||68 Ohm||SMD-1206|
|R7*||0 Ohm||PTC 0.5 Ampere||SMD-1206|
|JP1||2x6 ISP||2x8 header||SMD pinheader|
|S2||B3SN-3112||SMD tactile switch|
|S1||AYZ0102AGRLC||SMD slide switch|
|R6||499 Ohm||470 Ohm||SMD-1206|
||Register||Acting to current flow, and, at the same time, to lower voltage levels within circuits|
||Diode||Having low (ideally zero) resistance to the flow of current in one direction, and high (ideally infinite) resistance in the other.|
||Capacitor/Condenser||Used to store electrical energy temporarily in an electric field|
||Integrated circuit||a set of electronic circuits on one furtehr smaller plate|
||Jumper||a short length of conductor used to close a break in or open, or bypass part|
||Light-emitting diode||a p-n junction diode, which emits light when activated|
Preparation of parts
multimeter, which is an instrument designed to measure electric current, voltage, and usually resistance, typically over several ranges of value.
Production of FabTiny ISP
3. Set the board up for programming
To be able to program the microcontroller we need to set a starting program on the chip. That allows us to communicate with it.
That can be done with a AVR programmer, for instance, Arduino UNO, which can be bought off the shelf but it can also be done with another FabTiny ISP which has been programmed already.
I followed the programming instruction given on the tutorial page: Programming the firmware.
.zshenvand add PATH to the file.
In the new Terminal window, type in echo
$SHELLand press return.
If the output is
/bin/bashthen type the following command:
echo 'PATH=$PATH:/usr/local/bin' >> ~/.bash_profile
all on one line. Press return.
If the output is
/bin/tcshthen type the following command:
echo 'set path = ($path /usr/local/bin)' >> ~/.cshrc
all on one line. Press return.
Close any Terminal windows and open up a new one. This makes sure the
.cshrcis reloaded. Now type in
echo $PATH(for bash) or
echo $path(for t/csh) you should get something.
The important thing is that at the end of the line is
Programming by FabTiny ISP
1. Basic Information
- milling the board
- soldeling components
Learning Support(Tutorial of this class)
Here you can find this weeks's lectures on VIMEO: