Electronics and PCBs¶
Designing and producing custom PCBs was a crucial part of this project. Each board was designed to meet the unique requirements of a specific module while maintaining compactness, modularity, and ease of integration within soft textile layers. In total, I designed, milled, and soldered four custom PCBs, each contributing to the functionality of a different part of the educational kit system.
KiCad – Schematic & PCB Design¶
KiCad is a free and open-source electronics design software suite used to create schematics, assign footprints to components, and lay out PCB boards.
- Download KiCad: https://kicad.org/download/
-
The workflow in KiCad involved:
- Schematic Editor – Designing the logical connections between components.
- Footprint Assignment – Assigning each schematic symbol to a physical component layout.
- PCB Editor – Arranging the components and routing the traces.
- DRC (Design Rule Check) – Checking the board for common errors.
- SVG Export – Generating vector files of the board’s traces and outline to be used with Mods.
This process was repeated for each custom PCB, ensuring a clean, reproducible board layout for milling.
- More details on the PCB design process can be found in my Electronics Design documentation from Fab Academy.
Inkscape – SVG Editing¶
After exporting the SVGs from KiCad, Inkscape was occasionally used to adjust pad shapes, align mounting holes, or reposition misplaced elements. This was especially useful when the exported holes didn’t perfectly match the physical size or placement needed for manually soldered components such as buzzers, sensors, or wire pads.
- Download Inkscape: https://inkscape.org
- Common edits included:
- Enlarging or repositioning drill holes
- Cleaning up unnecessary paths or stray elements
- Making sure all pads and traces exported cleanly before toolpath generation
Mods – Toolpath Generation for PCB Milling¶
Mods is an open-source toolchain used to generate milling toolpaths from vector files. It allows fine-tuning of milling parameters and exports RML files compatible with Roland milling machines.
- Website: https://modsproject.org/
-
The workflow included:
-
Importing SVG trace and outline files exported from KiCad.
- Selecting the correct tool diameter (typically 1/64" for traces and 1/32" for outline).
- Setting parameters such as cut depth, offset count, and speed.
- Exporting toolpaths in RML format for the SRM-20.
This ensured precise control over trace width and board cutout for all designs.
Milling on the Roland SRM-20¶
The Roland SRM-20 desktop milling machine was used to fabricate the boards from copper-clad FR1 material.
- Double-sided tape was used to secure the board to the sacrificial surface.
- Milling was done in two stages: traces first, then outline.
- After milling, boards were cleaned, deburred if necessary, and checked for broken traces or short circuits using a multimeter.
- More details on the PCB milling process can be found in my Electronics Production documentation from Fab Academy.
Custom Designed PCBs¶
1. Logic Gate PCB¶
Overview¶
This PCB was designed to implement basic logic gates — including AND, OR, and NAND — using the 74HC08 DIP logic family. It forms part of the Tinker Logics kit and allows for modular circuit creation using snap connectors. The board receives two digital inputs (A and B), processes them through the logic IC, and outputs the result to an external module such as an LED.
A dedicated board was later designed for the NOR gate because the 74HC02 has a different pin configuration.
Logic Gate | IC Name | Datasheet Link |
---|---|---|
AND Gate | SN74HC08N | Texas Instruments – SN74HC08N Datasheet |
OR Gate | SN74HC32N | Texas Instruments – SN74HC32N Datasheet |
NAND Gate | SN74HC132N | Texas Instruments – SN74HC132N Datasheet |
NOR Gate | SN74HC02N | Texas Instruments – SN74HC02N Datasheet |
Components Used¶
- 1× SN74HC08N – Quad 2-input AND Gate
- 2× 10kΩ resistors – 1206 SMD pull-down resistors
- 2× Buttons – For A and B input signals
- 1× VCC pad – Power input
- 1× GND pad – Ground connection
- 1× Output pad – For connecting the output signal via soldered wire
The two input signals are pulled low through 10kΩ resistors to prevent floating states, ensuring a clean LOW when unconnected.
Breadboard Testing¶
Prior to PCB design, the logic behavior of each gate (AND, OR, NAND) was tested on a breadboard:
- Inputs were connected via switches
- Output was monitored via an LED
- Different ICs were tested to verify the common pinout among 74HC08, 74HC32, and 74HC132
Schematic Design (KiCad)¶
The schematic was created in KiCad. Key design details:
- Inputs A1 and B1 are routed through 10kΩ pull-down resistors to GND
- These are connected to pins 1 and 2 of the logic IC
- Output from pin 3 (1Y) is routed to a pad
- VCC (pin 14) and GND (pin 7) are connected to their respective pads
The schematic is simple, minimal, and effective for single-gate testing and use.
PCB Layout¶
Designed in KiCad’s PCB Editor:
- Components are placed compactly to minimize board area
- Traces are routed cleanly with adequate spacing for 1/64" milling
- Snap pads are positioned at the top and bottom edges for clear integration with textile modules
- The 74HC08N IC is placed horizontally with through-holes drilled manually for DIP pin access
Note: The IC was soldered directly to the board (not socketed)
Toolpath Generation (Mods)¶
- Trace and outline layers were exported from KiCad in SVG format
-
Mods was used to:
-
Load the SVGs
- Select a 1/64" endmill for traces
- Use a 1/32" endmill for cutout
- Adjust depth, offsets, and speed according to material and tool
This process generated two RML files (traces and outline) compatible with the Roland SRM-20.
PCB Milling¶



- Milled using the Roland SRM-20 on a single-sided FR1 copper board
- The board was secured using double-sided tape
- Traces were milled first, followed by hole drilling, then board outline
Each trace was visually inspected and checked using a multimeter.
Soldering¶



- The IC was directly soldered to the board after pin holes were drilled
- Resistors and pads were soldered by hand
- The board was labeled according to the gate type in use (AND, OR, NAND)
- It was then integrated into the Tinker Logics textile module with corresponding snap inputs and output
Design Files¶
You can download or embed the design files for this board below:
NOR Gate Variant¶
The SN74HC02N NOR gate IC has a different pin configuration compared to the SN74HC08N, SN74HC32N, and SN74HC132N logic gate chips. As a result, the original logic gate PCB layout was not compatible with the NOR gate. To accommodate this difference, a separate schematic and PCB layout were created to correctly map the inputs and output of the NOR gate, while maintaining the same overall module structure and external connections.
Schematic¶
The schematic was created in KiCad and follows a similar structure to the original board, with: - Two inputs (A and B), each routed through a 10kΩ pull-down resistor to ground - Inputs connected to pins 3 and 2 of the SN74HC02N - Output taken from pin 1 - VCC (pin 14) and GND (pin 7) connected to power pads
This design ensures stable LOW states when the inputs are unconnected and proper NOR logic behavior.
PCB Layout¶
In the PCB layout, components were positioned to match the updated pin configuration of the SN74HC02N. The board layout includes: - Two input pads (A and B) positioned on the left - Output pad on the right - Power and ground pads on the bottom edge - Clean trace routing with generous spacing for 1/64" milling - Manual through-holes drilled for DIP soldering
The overall dimensions and pad positions are consistent with the other logic gate modules to ensure compatibility with the textile snap layout.
Toolpath Generation¶
Traces and outline were exported as SVG files from KiCad and processed in Mods. The same toolpath generation process was followed: - 1/64" endmill for traces - 1/32" endmill for the outline - Standard depth, offset, and speed values used from previous successful tests
Milling & Assembly¶



- Milled using the Roland SRM-20 on a single-sided FR1 copper board
- The board was secured using double-sided tape
- Traces were milled first, followed by hole drilling, then board outline
Design Files¶
You can download or embed the design files for this board below:
2. Microphone Sensor PCB¶
Overview¶
This board was designed to amplify audio signals from an electret microphone using the LM386 low-voltage audio amplifier. It is used in the Master Makers kit as an analog input module, allowing the system to respond to sound levels. The circuit is based on the standard LM386 configuration with capacitor-based gain control and filtering.
Because audio signals from microphones are typically weak, this amplification stage is essential for generating a readable signal that can be processed by a microcontroller.
Components Used¶
- 1× LM386N-3 – Low-voltage audio power amplifier
- 1× Electret Microphone – 9mm x 7mm capsule
- 4× Capacitors (SMD 1206) – For gain control, DC blocking, and filtering
- 2× Resistors (SMD 1206) – Used in gain configuration and output voltage divider
- 1× VCC pad – Power input
- 1× GND pad – Ground
- 1× Output pad – For analog signal output to the microcontroller
Breadboard Testing¶
Before moving to PCB fabrication, the LM386 audio amplifier circuit was prototyped on a breadboard using the same component values.
Testing included:
- Adjusting gain by changing the capacitor between pins 1 and 8
- Verifying signal stability and noise
- Measuring voltage levels at idle and during audio input
Schematic & PCB Layout¶
The schematic was created in KiCad following the reference design from the LM386 datasheet. Key elements include:
- A capacitor (C1) and resistor (R1) form a high-pass input filter
- Capacitor (C2) between pins 1 and 8 sets the amplifier gain
- Capacitor (C3) is used to decouple the output
- Capacitor (C4) and resistor (R2) form a low-pass filter on the output
The PCB layout was kept compact, with:
- Minimal trace lengths for cleaner analog signal handling
- Proper decoupling and trace separation between input and output
- Through-hole pads for the microphone wires and external connections
Toolpath Generation Using Mods¶
- SVG files for traces and outline were exported from KiCad
- Mods was used to:
- Load the SVGs
- Select 1/64" mill for traces and 1/32" mill for cutout
- Set appropriate depth and speed parameters
- The exported RML files were sent to the SRM-20 milling machine
PCB Milling & Assembly¶



- The board was milled on an SRM-20 using standard settings for FR1 copper board
- After milling, pads and traces were cleaned
- Components were soldered by hand using SMD tweezers and low-temperature solder
- The electret microphone was connected via wires to allow flexible placement in the textile module
- Final testing showed the analog output responded consistently to sound input
Design Files¶
You can download or embed the design files for this board below:
3. Blinking LEDs PCB (Ambulance Module)¶
Overview¶
This custom PCB was designed for the Ambulance module in the Mini Makers kit. It creates a blinking red and blue light effect to simulate emergency vehicle lights. The board is based on the 555 timer IC operating in astable mode to continuously toggle the output state, alternating between two LEDs.
The board is compact, reliable, and easily embedded into a textile module with power, ground, and LED output pads.
Components Used¶
- 1× ICM7555 – CMOS version of the classic 555 timer
- ICM7555 Datasheet – Renesas
- 2× LEDs (SMD 1206) – One red, one blue
- 3× Resistors (SMD 1206) – Used for timing and current limiting
- 1× Capacitor (C1, electrolytic) – Used for timing (100μF)
- Pads for VCC, GND, and LED output
Breadboard Testing¶


Before designing the PCB, the blinking LED circuit was tested on a breadboard using the ICM7555 timer in astable mode:
- A capacitor and two resistors were used to set the on/off timing cycle
- Two LEDs were placed in opposite directions with current-limiting resistors
- The circuit successfully blinked the LEDs alternately at a visually suitable rate for an "emergency light" effect
Timing values were adjusted by trial until a pleasing blink rate was achieved.
Schematic & PCB Layout¶
The schematic was designed in KiCad, following a standard 555 timer astable configuration: - Pin 3 (Output) is connected to two LEDs through resistors - Pins 6 and 2 are tied together and connected to the RC timing circuit - Pin 5 is grounded via a capacitor for stability
The PCB layout: - Placed the ICM7555 in the center with symmetrical routing - Positioned the LEDs along the edge for visibility through the textile window - Included VCC and GND input pads - Used 1206-sized SMD components for compactness
Toolpath Generation (Mods)¶
- SVG trace and outline layers were exported from KiCad
- Loaded into Mods for toolpath generation
- Used 1/64" endmill for traces
- Used 1/32" endmill for board outline
- Standard depth, speed, and offset settings were used
Milling & Assembly¶



- The board was milled using the SRM-20 milling machine on a standard FR1 copper board
- After milling, all components were soldered using fine-tip tweezers and low-temp solder
- The LEDs were tested to ensure correct blinking rate and polarity
- The final PCB was integrated into the Ambulance textile module with fabric windows exposing the blinking LEDs


Design Files¶
You can download or embed the design files for this board below:
4. Ultrasonic Sensor PCB (School Bus Module)¶
Overview¶
This PCB was designed for the School Bus module in the Mini Makers kit. It allows an ultrasonic distance sensor to trigger a buzzer automatically without the need for a separate microcontroller. The board uses a 555 timer IC to detect the pulse returned from the ultrasonic sensor and drive an output signal.
The purpose of this circuit is to simplify sensor-based interaction using only analog logic, making it suitable for younger users while maintaining interactivity and responsiveness.
Components Used¶
- 1× LM555 – Timer IC for pulse detection and signal shaping
- LM555 Datasheet – Texas Instruments
- 2× Resistors (SMD 1206) – For timing control
- 3× Capacitors (SMD 1206) – Filtering and timing
- Pads for:
- Ultrasonic trigger input
- Echo signal input
- Buzzer output
- Power (5V) and Ground
Breadboard Testing¶
The circuit was prototyped using a breadboard before finalizing the design. Tests included:
- Connecting the trigger and echo pins from an HC-SR04 ultrasonic sensor
- Using a buzzer as the output device to indicate proximity
- Tuning resistor and capacitor values to set the delay and threshold behavior
- Confirming standalone functionality without any microcontroller
The buzzer successfully activated when an object was detected within range.
Schematic & PCB Layout¶
The schematic was created in KiCad and follows a 555-based monostable pulse detection configuration: - The echo pin from the ultrasonic sensor feeds into the trigger (pin 2) - The timer is configured to output a fixed HIGH signal for a duration defined by R1, R2, and C2 - The output on pin 3 drives the buzzer - Capacitors are used to stabilize the signal and prevent retriggering
The PCB layout includes:
- Compact routing of traces with no overlaps
- Through-holes for soldering sensor wires
- Pads for VCC and GND connections
Toolpath Generation (Mods)¶
- SVG files for trace and outline layers were exported from KiCad
- Imported into Mods, where:
- A 1/64" endmill was selected for traces
- A 1/32" endmill was used for the board cutout
- Standard cut depth and speed values were used
PCB Milling & Assembly¶



- The board was milled on the SRM-20 using single-sided FR1 material
- After milling, all components were soldered by hand
- A small piezo buzzer was connected to the output pad
- Function was confirmed by moving an object near the sensor — triggering a tone output
This board was embedded in the School Bus textile module, making the module interactive without needing a microcontroller.



Design Files¶
You can download or embed the design files for this board below: