top of page

Portfolio Projects

Here are a few of my portfolio projects that I've kept over the years. Though there's a clear focus on embedded systems (and by extension, C & C++), I dabbled a little bit with PCBA design, full-stack software applications, and other cool stuff. Check it out below!

579703DA-4A44-431B-9924-9A41B0AA90AA.jpg

Hornet Brushed Motor Controller

Personal Project | Nov 2021 - Apr 2022
  • Designed 24V 60A brushed actuator controller; designed PCBA and wrote C controller firmware

    • Enabled parallel development of PCBA and firmware by using TDD to validate runtime code execution, significantly reducing bring-up time while instilling confidence in firmware

  • Developed driver HAL abstraction for peripherals, enabling TDD and rapid MCU changes due to chip shortage

5D3_6967.JPG

Project VANGUARD

WARG | Sept 2021 -May 2022

Led an amazing team of undergraduate students to build a drone capable of object retrieval and autonomous human intruder detection. 

 

We competed in Southport, MB, at the annual AEAC student competition - though we didn't take home any awards or records, we learned a lot about what we didn't know.

84AC69C9-8C7A-4345-B200-CC2550319AE4.jpg

3 Phase BLDC Motor Controller

Personal Project | Aug 2021 - Oct 2021
  • Created sensorless brushless DC motor controller for use in drone and robotic applications

  • Programmed trapezoidal commutation control scheme; opted to use off-board STM32 as a result of chip shortage

  • Simplified zero-crossing detection in hardware as the firmware implementation of sensored BLDC only required a phase shift timer to be removed with no additional wiring changes to the logic controller

  • Implemented hobby PWM RC interface using timer input capture to make controller compatible with RC systems

WARG_Infineon_Photo_edited.jpg

WARG Zeropilot Software

WARG | Sept 2020 - Present
  • Designed and brought up the safety controller (STM32F030)

  • Architected system to use 2 separate chips: one to perform high-level path planning and management and another to interface with the actuators capable of switching between manual control and autopilot commands

  • Opted to use bare-metal application to reduce code complexity and overhead on the safety chip

  • Implemented custom watchdog timer to default to manual control in the event that autopilot SPI transactions are not received within the specified time period

IMG_9191.jpg

Mars Rover Chassis Control System

UW Robotics Team | Sept 2021 - Oct 2021
  • Designed a robotic control system to allow for teleoperated and autonomous control of a chassis

  • The objective was to design a robust system that could be used for ROS2 experimentation, as well as mechanical validation of a new prototype drivetrain through teleoperated control

  • Opted to use WiFi as the physical communication layer to allow non-tethered operation at ranges of up to 250m

  • Created command and control API through UDP multicasting in Python; implemented automatic software emergency-stop through a lost-link watchdog

  • Programmed differential drive using inverse kinematics to facilitate arcade-style teleoperation, allowing for precise control of the robot by human operators

  • Implemented current and voltage monitoring telemetry at a rate of 1 kHz, allowing for accurate torque and power delivery estimation and prototyping

541FB156-43BB-4262-99B3-ACCBA8298648.jpg

Wireless Soil Moisture Sensor

Personal Project | Sept 2021 - Oct 2021
  • Designed wireless soil moisture sensor to evaluate runway surface conditions on an active aerodrome

    • For context, it rains a lot at my gliding club... I didn't want to keep on driving out only to find out it was super wet

  • Created custom 2-layer PCB in KiCAD featuring ESP32, USB, and UART; wrote firmware in C using ESP-IDF

  • Developed data transfer system via UDP multicasting using LwIP and FreeRTOS, enabling wireless communication

bedibot.png

University Identity Authentication Discord Bot

Personal Project | Oct 2020 - Present
  • Developed a discord bot to handle identity verification, announcements, and other functions as required. The bot boasts 4k+ active users across 2 universities and 15+ servers

  • Acted as the project manager and architect during initial development and V2 releases

  • Implemented listener events with Discord REST API within a TypeScript command framework, allowing for additional event-driven functionality to be added to the bot

  • Reviewed and authored 50+ PR’s in Python 3 and TypeScript, enforcing proper conventions and scalability

  • Added CI/CD functionality to development pipeline, significantly reducing bug report rate by 200%

CF350407-331E-44C9-8A10-B8D0F0C3B5A1.png

FIRST Competition Robots

4733 Scarlett Robotics | Sept 2017 - May 2020
  • Led a team of 12 high school students to build two 120 lb robots in 6 weeks

  • Wrote control algorithms and drivers to manipulate actuators over PWM and CAN interfaces with Java

  • Enabled autonomous completion of tasks through PID control, encoders, and vision-sensing peripherals

  • Mentored software team members in introductory CS concepts and robotic control system design

bottom of page