Group assignment
Individual assignment

01 | I started this task by making sure I define PWM pins on the ESP32-C3 SuperMini, with the help of AI Gemini
02 | I chose the vibration motor as the output for this assignment, as it will also be used in my final project
03 | With the help of AI Gemini I defined the parts I need to create the driver for the motor and how to connect it to the ESP32-C3 SuperMini
06 | In the KiCAD schematic editor I added the parts (Transistor, Diode, 1K resistor, hairpin) → connected the parts as defined by AI Gemini → then looked for errors in the Design Rules Checker
16 | Designed an additional PCB for the vibrator motor driver and made the routes 1mm thick as I wanted to design this driver using the vinyl cutter
18 | I used generated by Gemini AI to test the vibration power, speed and duration, following this workflow: Open Arduino IDE → select the ESP32 C3 library → copy/paste the code → verify the code → upload to microcontroller → press reset button if needed
const int motorPin = 10; // Connect to the 1k resistor -> Transistor Base
void setup() {
pinMode(motorPin, OUTPUT);
}
void loop() {
// Gentle pulse
analogWrite(motorPin, 150); // 0-255 scale
delay(500);
// Hard pulse
analogWrite(motorPin, 255);
delay(500);
digitalWrite(motorPin, LOW);
delay(2000);
}
19 | It was working — I changed the values and saw how the vibration changed
20 | I imported the SVG file of the PCB I designed into SignMaster Pro to use the SkyCutter, and followed this workflow: placed the copper tape on a hard 3D-printed flat plate → taped the plate on the cutting mat → set the cutter to lowest speed and lowest force
21 | Once it was completed, I removed the unwanted parts and was left with the circuit ready for soldering the parts to it
23 | Then I started the soldering workflow: the solder temperature was at 300 degrees Celsius → put some paste on the solder → made two soldering spots on the circuit → then tried to connect the resistor as the first part
27 | I started by applying small drops of resin that would hold the copper circuit as well as the small electronic parts I wanted to solder
30 | I soldered all the parts, but it was not an easy process. I was always afraid of creating short circuits and having to repeat everything. The first parts I soldered were the best (Diode, VM), but as I progressed my soldering got worse, I think for two main reasons: I'm not used to soldering yet, the circuit was very small, and I got both tired and scared of melting the plastic I applied the circuit on.
01 | I needed to confirm whether the LED was common cathode or common anode. I used a multimeter for that: first I turned on continuity / diode mode → connected the red probe (positive) of the multimeter to one of the legs → touched the black probe (negative) to each of the other legs in turn → I kept trying different combinations until I could identify the common Anode, Red, Blue, and Green legs.
02 | I bent the legs of the component I needed to use and considered the order of the legs when laying out the schematic for the circuit I was designing.
03 | This is the schematic added to my project. I included a 10K resistor for each colour leg connected to a pin on the microcontroller.
04 | I created the routes based on the actual physical order of the legs. You can see how the 3rd leg has to be routed to ground.
06| One important note for a common-anode LED: in code, sending signal (0) turns the light ON, while sending (1) turns it OFF — the logic is inverted compared to a common-cathode LED.
07| For my final project I used a more advanced code developed with the help of Gemini — for a smoother initialization, to alternate between colors indicating different statuses, and to use blinking for the calibration.