Difference between revisions of "How to Make Circuits in the Fab Lab"

From Fab Lab Wiki - by NMÍ Kvikan
Jump to: navigation, search
(Troubleshooting)
(Troubleshooting)
Line 87: Line 87:
 
  avrdude: initialization failed, rc=-1  
 
  avrdude: initialization failed, rc=-1  
 
           Double check connections and try again, or use -F to override this check.
 
           Double check connections and try again, or use -F to override this check.
| Follow the [[Make a programming cable]] tutorial to build a cable  
+
|  
 +
*Follow the [[Make a programming cable]] tutorial to build a cable
 +
*Check for electrical continuity at the cables end
 
|-
 
|-
 
|  Microcontroller voltage terminals  
 
|  Microcontroller voltage terminals  
Line 100: Line 102:
 
**Follow the [[Make a programming cable]] tutorial to build a cable;
 
**Follow the [[Make a programming cable]] tutorial to build a cable;
 
**If the cable is done right, make sure the wires are making connection on the cable connectors, by using the multimeter;
 
**If the cable is done right, make sure the wires are making connection on the cable connectors, by using the multimeter;
 +
avrdude tiny45 load hex file, bsd cable: avrdude -p t45 -c bsd -U flash:w:file.hex
  
 
= External Links =
 
= External Links =
 
* asdf
 
* asdf

Revision as of 18:38, 15 January 2010


Making a circuit requires several mini-projects:

Design and Architecture

Decide what function your circuit board should have

A good approach is to write down in words how the circuit board should work.

Create the schematic and board layout in a CAD program

Use e.g. Eagle or Cad.py, ,or Gimp (drawing tool), Inkscape or Open Office or draw it with black pen and scan and trace. The gap should be the right size and shape.

Physical Fabrication

Machine the board

Physically milling or cutting out the board which connects components

"Stuffing": Solder components on to the board

Solder the components to the board. If you want to where the components should be you could look at the file design, in .cad file or you can check out

Microcontroller Programming

Make a programming cable

Write the Program

Write the program (in e.g. assembler or C) , compile the program so that the microcontroller will understand it -> Jan

Programming the microcontroller

If you are using the Fab Labs, AVR microcontrollers

  • Use ICP (In Circuit Programmer)
  • AVRDUDE

-> Jan

Testing and Troubleshooting

Test the microcontroller

Plug the microcontroller in.

  • Is the power on?


Troubleshooting

If your board is not working, follow the step to troubleshoot it:

  • Check if the power is on:
Check Problem Possible solution
Battery voltage Voltage too low Replace the battery
Microcontroller voltage terminals No voltage or too low (it should be around 3,3 V to 5 V for the hello boards)
  • Follow the track and check every component voltage (capacitor, voltage regulator)
  • Check the solder there is no electrical continuity
  • If the solder is ok, replace the component


If you cannot download your code to the microcontroller,

Check Problem Possible solution
If the cable is done right Software AVRDUDE gives error:
avrdude:AVR device not responding; 
avrdude: initialization failed, rc=-1 
         Double check connections and try again, or use -F to override this check.
Microcontroller voltage terminals No voltage or too low (it should be around 3,3 V to 5 V for the hello boards)
  • Follow the track and check every component voltage (capacitor, voltage regulator)
  • Check the solder there is no electrical continuity
  • If the solder is ok, replace the component
  • Check if your cable is done right:
    • Follow the Make a programming cable tutorial to build a cable;
    • If the cable is done right, make sure the wires are making connection on the cable connectors, by using the multimeter;

avrdude tiny45 load hex file, bsd cable: avrdude -p t45 -c bsd -U flash:w:file.hex

External Links

  • asdf