Newer
Older
#Electronics design
---
This week is about learning how to design a PCB.
I chose a hello.echo board based on ATtiny44 as it has the most available documentation.

To add an LED and a switch, I started by making a list of the components required:
Components list:
1x ATtiny44 microcontroller
1x 1uF Capacitor
1x header 2x3
1x FTDI connector
1x 10k ohm resistor
1x 20MHz resonator
Added components:
1x LED
1x 1kΩ Resistor
1x switch
1x 1kΩ Resistor
[Data sheet for ATtiny44](http://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-7701_Automotive-Microcontrollers-ATtiny24-44-84_Datasheet.pdf)
Pinout for Attiny44
I used [KiCad 5.1.6](https://kicad-pcb.org/) to design my PCB. KiCad is an open source software suite for Electronic Design Automation (EDA). The program helps create a Schematic in sub-application called Eeschema, and then design the PCB Layout with Gerber output (this is what you send to a manufacturere) in the sub-application called PCBnew.
First step was to import all of the symbol and footprint libraries adapted for SMD components. These libraries can be found [here.](http://academany.fabcloud.io/fabacademy/2020/labs/barcelona/site/local/#material/extras/week06/assets/kicad_libraries.zip)
#### Designing schematic
I placed the components listed above one by one, using the place component tool. Then changed properties like annotations and values, by hovering above the component and pressing E which opens the symbol properties window.
I also placed some tags using the tag tool - like GND and VCC, to make the schematic neat and clear.
Finally, I generated a Netlist by pressing the green netlist symbol on the toolbar.
However I got an error saying that component R1 did not have footprints defined.
So I went back and assigned footprints to the missing part, by going to its properties again, and selecting the correct footprint from the newly installed libraries. And generated the netlist again.
#### Drawing traces
Then I opened the KiCad pcbnew part, and found the netlist created and stacked of all components in the middle of the board.
I first editied the design rules in its menu and set the grid size.
The components all have an indicative line connection, so I used that to rearrange them and then added the traces, using the trace tool.
After connecting them all, I used the line tool to draw the outline like so.
I opened the svg in Adobe Illustrator, made new layers for the traces and outline respectively.
Then, after checking that the model is in mm, exported both layers separately at 150dpi in png.
I followed the same process as [Electronics Production](./Electronics Production.md) week to make toolpaths, mill the board, solder components and test the board.
But this time I used [Mods](http://mods.cba.mit.edu/) instead of Fabmodules. Here's the process:
I could not fabricate this board because did not have access to a lab.
#### At the lab
So steps remaining for this week - mill the board, solder the components, test.
#### References
[Sparkfun KiCad beginners guide](https://learn.sparkfun.com/tutorials/beginners-guide-to-kicad/all)
#### Design Files
[KiCad Schematic](./images/ed/attiny44.sch.zip)
[KiCad pcbnew](./images/ed/attiny44.kicad_pcb.zip)
[SVG](./images/ed/attiny44-brd.svg)
[AI](./images/ed/attiny44-brd.ai.zip)
[traces.png](./images/ed/traces.png)
[outlines.png](./images/ed/outlines.png)
[traces - toolpath for srm20](./images/ed/traces.srm20.rml.zip)
[outlines - toolpath for srm20](./images/ed/outlines.srm20.rml.zip)