Projects
Technical projects showcasing skills in embedded systems, Linux drivers, and sensor fusion algorithms.
projects
GNSS + IMU + LTE Sensor Fusion Navigation Module
Feb 2026 - Present
Personal Project
- Designing a multi-sensor navigation system combining GNSS, IMU, and LTE for robust positioning in degraded environments
- Developing a hybrid architecture with microcontroller-based IMU acquisition and Embedded Linux–based sensor fusion
- Implementing an Extended Kalman Filter (EKF) for real-time state estimation
- Building modular communication interfaces using UART, SPI, and I2C
Embedded Linux Bring-up & Driver Development
Feb 2025 - May 2025
Personal Project
- Built and deployed a Debian-based Embedded Linux system on BeagleBone Black via cross-compiling U-Boot and Linux kernel
- Developed an I2C Linux device driver for LCD display integration
- Implemented a user-space application with button input via sysfs
Forest LiDAR Scanner
Aug 2023 - Apr 2024
University of British Columbia
- Collaborated in the design and development of a LiDAR-based system for forest mapping and 3D point-cloud generation on Raspberry Pi 4B
- Integrated vendor-provided IMU C library with Python bindings and implemented GNSS data processing
- Applied Kalman filtering (~4 m accuracy) to improve positioning performance
- Developed Python-based control software and PyQt touchscreen UI for system operation
- Managed component selection and budget, delivering a solution at ~80% cost of comparable systems
Microcomputer System Design (FPGA)
Jan 2024 - Apr 2024
University of British Columbia
- Designed ROM and DRAM subsystems using Quartus IP with interfaces to the Motorola 68000 CPU
- Implemented communication controllers including SPI, I2C, and CAN
- Verified system functionality by running embedded C programs on the integrated platform
Ball-Picking Robotic Arm (Arduino)
Jan 2023 - Apr 2023
University of British Columbia — ELEC 391
- Developed control software for a robotic arm using Arduino Uno (R3)
- Programmed DC motor control for pick-and-place operations
- Designed circuit schematic and hand-soldered PCB for sensor and actuator integration
- Collaborated on mechanical design using 3D-printed components
- Worked within a team implementing PID-based control for precise positioning
AI Accelerator Datapath (FPGA / Nios II)
Sep 2022 - Dec 2022
University of British Columbia — CPEN 311
- Designed a custom AI accelerator datapath to improve computational performance
- Integrated the accelerator with a Nios II processor system via a handshake interface
- Optimized data flow between processor and hardware modules
- Validated system performance through FPGA-based testing
Coin-Picking Robot (ATmega328P)
Jan 2022 - Apr 2022
University of British Columbia — ELEC 291
- Developed embedded firmware in C on ATmega328P for an autonomous mobile robot
- Controlled locomotion using servo-driven wheels
- Designed sensing system using inductive sensors and AC boundary detection
- Built a robotic arm with dual servos and a custom electromagnetic pickup mechanism
- Integrated hardware and software for autonomous coin detection and collection
8-bit RISC-V Processor (FPGA)
Sep 2021 - Dec 2021
University of British Columbia — CPEN 211
- Designed and implemented a simplified 8-bit RISC-V processor on FPGA
- Developed datapath and control logic supporting arithmetic and bitwise operations
- Integrated ROM-based instruction memory for program execution
- Verified functionality through simulation and hardware testing