Assignment #6
Electronics design
The sixth Fab Academy assignment is electronics design. As in the electronics production assignment, I chose an ATtiny45 to make a hello board following Neil’s instructions. Although I have some electronics experience, this is my first time exploring the topic in this much detail.
1 – analysis of the controller and schematics design
First, I read the ATtiny datasheet to understand each pin’s function. I added two LEDs and a switch, then checked my design against work by previous Fab Academy students. In particular, I looked at what Rutuja Patel did in 2018.
After calculating the component values, I drew a schematic for what I hope will be a working hello board.
The result is a board that uses the following components:
- 1 x ATtiny45
- 2 x LEDs
- 1 x 10k resistor
- 1 x 499 resistor
- 1 x 1k resistor
- 1 x 2 x 3 pin connector
2 – designing the board with KiCad
With the schematic ready, it was time to design the board.
KiCad’s workflow reminds me of Plato’s philosophy: first comes the schematic, the world of ideas; then the assignment of footprints and generation of a netlist, like the demiurge; and finally the PCB, the physical world!
I added the components to the schematic and connected them. Some connections overlap in the drawing, but I could tidy the layout later.
Once I was happy with the schematic I opened the “assign PCB component” menu, and explored the libraries available from KiCad. The components I’m using are quite basic, and therefore I was able to find all of them without needing to add extra components to my library. At the end of this process I generated a so-called netlist.
Next, I opened the PCB editor and imported the netlist. I increased the track width in the design rules to make the board easier to mill.
I used a track width of 0.4, a drill diameter of 0.8, and a clearance of 0.2, half the diameter of the bit intended for the traces.
I tried to produce a board as compact as possible, and then I created an infill layer below so that it will be possible for me to cut it out using FlatCAM (see the circuit production assignment for more info about this).
Once I was happy with my PCB I exported my gerber files for milling.
3 – milling the board
I imported the board into FlatCAM, generated the G-code, and milled it with my Stepcraft 2/600 Black Edition.
4– soldering the components
I then soldered the components. After the difficulties of the electronics production assignment, I was very careful. This time, I fitted everything without too much trouble, although I was nervous throughout. Multimeter checks indicated that the connections were good.
5 - Satshakit
On my local instructor’s advice, I also decided to make a custom version of the Satshakit .
The Satshakit is an Arduino-compatible board designed by former Fab Academy student Daniele Ingrassia. Since I have some Arduino experience, I thought it would be a good basis for my final project.
I adapted its shape to fit the shells I had already designed.
The board uses the following components:
- 1 x ATMEGA328P-AU
- 1 x switch
- 1 x 16Mhz/18pF crystal
- 2 x LEDs
- 2 x 499 resistor
- 1 x 1k resistor
- 2 x 22pF capacitor
- 1 x 10uF capacitor
- 1 x 1uF capacitor
- 2 x pin connector
As with the hello board, I redrew the schematic in KiCad and assigned footprints.
In the PCB editor, I imported a DWG drawing showing the positions of features in the printed shell. I used it to place the mounting holes and define the board outline.
I positioned the pins near the centre of the device and reserved the other half for input and output devices. The resulting outline is unusual: a fully circular board would have wasted too much material.
Before exporting the Gerber files, I used the KiCad StepUp add-on to check the board’s dimensions. The fit looked correct, so I exported the files.
At the time of writing, COVID-19 makes it difficult to access labs and mill PCBs. To try another manufacturing process and obtain a good-quality board for my final project I had Seeed Studio manufacture the Satshakit. The result was excellent: soldering was much easier, and the board fitted the printed parts perfectly.
This board works almost as smoothly as a commercial Arduino, and perhaps I can use it for other assignments.
Source files
Here are all the source files for the Electronics Design assignment:
1 – Hello board ATtiny45 KiCad files
2 – Hello board ATtiny45 Gbr files
4 - Satshakit KiCad files
5 - Satshakit GBR files
