Skip to content

Week 5. Electronics Design

Group Assignment

Development Board Design (KiCad)

Since I have already been working in the Fab Lab for one and a half years, I was lucky enough to create PCBs using KiCad several times, and I decided to do this assignment with KiCad as well.

What is KiCad?


alt text
KiCad is a free and open-source electronics design automation (EDA) suite. It features schematic capture, integrated circuit simulation, printed circuit board (PCB) layout, 3D rendering, and plotting/data export to numerous formats. KiCad also includes a high-quality component library featuring thousands of symbols, footprints, and 3D models. KiCad has minimal system requirements and runs on Linux, Windows, and macOS.

KiCad Components

The main KiCad components are usually started from the launcher buttons in the KiCad project manager window. These components include:

Component Name Description
Schematic Editor Create and edit schematics; simulate circuits with SPICE; generate BOM files
Symbol Editor Create and edit schematic symbols and manage symbol libraries
PCB Editor Create and edit PCBs; export 2D and 3D files; generate fabrication output files
Footprint Editor Create and edit PCB component footprints and manage footprint libraries
GerbView Gerber and drill file viewer
Bitmap2Component Convert bitmap images to symbols or footprints
PCB Calculator Calculator for components, track width, electrical spacing, color codes, etc.
Page Layout Editor Create and edit worksheet files

Setting up KiCad

First, I downloaded KiCad and installed it.

First, I downloaded KiCad from the official website and installed it.

Then I downloaded Fab lab’s component library for KiCad here.

Here I used fab.kicad_sym for Symbols and fab.pretty for Footprints.

alt text

For adding libraries we need go to Preferences > Then Manage Symbol Libraries and Manage Footprint Libraries .

alt text

Then go to + > Add existing library > Select library file and press Ok. (Same for Footprint library)

alt text

Now there are all FabLabs Components with footprints.

alt text

Designing Schematic

Since I will use the ESP32 for my final project, I decided to design a board for the XIAO ESP32-S3.

Here are the main tools that I used for designing.

alt text

First, I started adding symbols and connecting them to the connectors.

alt text

I connected them using add wires (W kotkey).

alt text

Then I started adding global labels to have as few wires as possible in the schematic.

alt text

After that, I decided to make all connections with global labels.

alt text

I added a voltage regulator to connect the ESP32 to the battery contacts because I will use a 7.2V battery. I also added an LED, as I will use it to check the operation of the voltage regulator since I placed it after it.

alt text

Here is the final schematic.

alt text

I ran the Electrical Rules Checker (ERC) to see if I had any errors, but there were only warnings stating that some pins were not connected to anything.

alt text

Then I went to the PCB editor and clicked on “Update PCB from Schematic,” and all the components appeared.

alt text

I started placing all the components in a way that the traces wouldn’t intersect, to avoid adding jumper resistors.

alt text

Adding Traces and “FreeRoute” Plugin

Since this is not easy, I tried to find some plugin that could automatically place the components, but I only found a plugin that automatically makes traces. This is also a very useful feature. Plugin name is Freeroute.

alt text

Before running the plugin, I changed the wire track clearance and width.

alt text

To run the plugin, I went to the PCB editor, then went to Tools > External Plugins > FreeRouting.

alt text

After a few seconds, it automatically placed all the traces.

alt text

Here is Result.

alt text

For safety, I thickened the tracks that were connected to the battery.

alt text

Then I selected the edge cuts layer and drew a graphic polygon.

alt text

Then I made the lines thicker.

alt text

When I clicked on the 3D viewer, there was only the board without components, so I decided to add the components manually.

Adding 3D Models of Components

alt text

By double-clicking on the components, the footprint properties opened, where I went to 3D models and started adding models for each component.

alt text

And here is the Final Result .

alt text

Conclusion

This week has been one of the harder ones, more theoretical. I’m not good at electronics, so I had to read and study a lot about components and their properties. I liked our group assignment, especially calculating the resistor of the voltage divider using formulas.

Files of this Week


Last update: March 5, 2025