I'm currently a first year electrical engineering UWaterloo student venturing into the world of Hardware Design. My passion revolves around bringing impactful solutions born from creativity and the magic of modern technology. To achieve this, I've been and am actively seeking to refine my skills from architecting digital logic in chip design to building scalable, user-facing applications. My hobbies include disecting old electronics, messing around with system ricing and automation scripts on my linux computer, and mixed martial arts.
Blyswatch is one of the first PCB I've designed from scratch and serves as a demo board to showcase development with both the BLYSTL15 (based on the Nordic Semiconductor's nrf54L15) along with the firmware IOComposer AI from I-Syst.inc. The design includes 6-axis motion LSM6DSV16X, nPM1304 Power Management IC, TMP117 temperature sensor, MAX30102 pulse oximeter and heart-rate sensor, SSD1306 OLED screen and an Ambient Light Sensor bundled in a low-cost 2 layer PCB. It comes along with a dock that seemlessly connects to its exposed copper pads for charging and firmware upload (using a JTag Cortex Debugger). I am currently in the process of ordering the parts for manual assembly and designing its 3d case in Solidworks.
The BlueIO832-Mini is a Bluetooth Low Energy microcontrollers based on Nordic Semiconductor's nrf52832 SoC.
It is aimed to provide a intuitive learning experience similar to the Arduino, but with a lower entry level that doesn't require to know on how to code.
I was fortunate to be able to write the four mobile applications that pair with this microcontroller and that serve as the medium to configure the board's pin functions.
Each of these four apps allow the user to effortlessly interface with this external hardware, configure communication protocols, and monitor sensor data without ever needing to write a single line of embedded firmware.
Coming soon on both iOS and Google Play, Mai is an mobile application that takes period tracking one step further from the others menstrual apps. Along with its light predictive engine, Mai pairs with the Blystpad, a smart bluetooth heatpad, in order to help reduce period cramps. Mai notifies the user about their upcoming menstruation dates and to use the Blystpad based on the increasingly accurate period predictions based on past user data. To keep the app lightweight, the predictive engine uses a simple K-NN machine learning algorithm paired with a Exponential Moving Average fallback mechanism that dynamically adjusts based on historical user data deviations.
This was a hobby project with the sole purpose of boosting my daily productivity while keeping my desktop user-interface aesthetically pleasing on Arch Linux. By combining Hyprland (a Tiling Window Manager) and Quickshell, I was able to create a personal desktop environment as minimal as possible while still retaining the core essential functions. Along with this setup, I've written various bash scripts linked with Hyprland to pull up my essential applications (Discord, Slack and Notion) as a special workspace, automatically update my packages using Pacman, and display the computer's system activity statistics.
At the end of my first term of university, we were given the chance to create our own projects with the purpose of solving a real world issue that affected a large percentage of the patients in hospitals. That problem was Hospital Induced Delirium, a severe state of confusion and cognitive impairment that could cause devastating consequences such as memory loss and hallucinations. From going through various research papers, our team narrowed down one of the major causes of this condition, that being the excessive noise levels in modern hospitals. As such, by combining a Raspberry Pi as our main computing unit, two microphones to serve as reference and error adjustment and a speaker, we were able to make a prototype of our solution within the short span of a month. We've learn to leverage the MATLAB audio toolbox along with the RPi Support Package to create an automatic calibration system and a continuous noise cancellation loop that works at long distances. However, with the limited time and material in hand, our device was highly susceptable to noise and reduce the noise by less than 3 dB.
As part of the final assignment in my grade 12 computer science class, we were given the full liberty of creating our own C++ project. Along with 2 classmates, I've learned to build a video game that leveraged the Axmol Game Engine (a fork from Cocos2d-x). Through Continental Buffet, I was able to combine my understanding of Object Orienting Programming with efficient JSON data handling to deliver a game that introduces you to various dishes across the world.