PROJECTS
Welcome to my projects! Here, you can view all of my latest projects and works. I am passionate about what I do, and I hope that my projects gives you a glimpse of my skills and abilities.
Music Synthesiser
Collaborated within a 4-member team to develop embedded software for a music synthesiser utilising an STM32 microcontroller. Key accomplishments involved integrating diverse functionalities such as volume control, octave control, multiple waveform audios (sawtooth, square, triangle, sine), handling simultaneous key presses, incorporating a joystick for pitch bending and volume adjustments, enabling recording and playback capabilities, and creating a user-friendly, multi-page display interface.
iFeed
Collaborated within a team of four to design and construct a pet feeding solution, utilizing CAD and 3D printing techniques. The product enables users to conveniently schedule feeding times and portion sizes through a web server account. At the designated date and time, the system auto-dispenses the precise number of grams for the pet to consume. Users can create profiles for their pets and select the desired recipient for each feeding session. During feeding time, iFeed notifies the appropriate pet by calling out its name using an integrated speaker. To ensure food is delivered to the correct pet, a Computer Vision algorithm is employed to identify the correct pet by breed; otherwise, the system waits until correct detection is achieved. The device has a built-in live stream for pet monitoring purposes, as well as a keypad for manual food dispensing.
Click
to view the website

Mars Rover System
Designed and built an autonomous rover system navigating through an arena and building a map with the location of aliens and their infrastructure, dynamically interchanging between real-time user control and autonomous control, and avoiding alien collision. Built the energy station for efficient battery charging (wrote Arduino MPPT code and battery charging code) and the corresponding PV panel configuration needed; developed Verilog code for the camera for object detection and analysis (color, dimensions).

Digital Circuits Design
I used the Quartus Prime tool to design and develop a digital system in Verilog that uses both an ADC and DAC for an analog sound circuit and contains a FIFO memory system that allows for complex audio processing. Moreover, I designed a variable frequency sine wave generator, a real-time clock, a variable Delay Echo Synthesiser, a voice corruptor, and a complete audio processor (all were implemented using an ALTERA FPGA DE10-lite (grade: First Class Honors).

Drone Modelling
I designed and simulated a two-degree-of-freedom drone, incorporating pitch angle freedom and horizontal translation along a specified trajectory. By analyzing its behavior in both free and forced states, I utilized Matlab to iteratively fine-tune PID parameters for attitude, velocity, and position controllers, employing a trial-and-error approach.

EM Wave Propagation in Two-Port RF and Microwave
Used a vector network analyser (VNA) to investigate electromagnetic (EM) wave propagation in two-port radio frequency (RF) and microwave systems, both in transmission lines and in free space. Wrote MATLAB to process data exported from the VNA and extract results (grade: First Class Honors).
Microstrip Waveguide
Designed a microstrip waveguide in MATLAB, a key element of almost all high-frequency electronic circuits and microelectronic chips (grade: First Class Honors).

Circuit Simulator
Created a circuit simulator program in C++ which analyses circuits with voltage & current sources (AC & DC), resistors, capacitors, inductors, NP diodes, and BJT transistors (NPN & PNP). The output voltages of all nodes were plotted on a diagram, written in python.

Click
to view the code
Operational Amplifier
I designed an operational amplifier & wrote a logbook describing its features and the implementation decisions (grade: First Class Honors).

MU0 -ARM CPU
Designed a pipelined MU0-ARM CPU in ISSIE software tool from Imperial College London. Verified the logic by running various programs in the RAM.
