Projects

  • GreenNet CARLETON ENGINEERING PROJECT (Final Year)

    Semi-autonomous greenhouse prototype controlled by a programmable microcontroller.

    • Developed C++ code and libraries for an Arduino microcontroller used to control plant treatments (watering, artificial light exposure, etc.) and take environmental measurements (air temperature, humidity, etc.).
    • Designed and developed a Graphical User Interface (GUI) using HTML, CSS, and JavaScript, which was used to interact with greenhouse from devices with a modern web browser.
    • Integrated the GUI and microcontroller using Websocket and JSON communication.
    • Designed and constructed the greenhouse's power system using LM2596 DC buck converters, MOSFET driver modules, and a recycled laptop power supply.
    • Created custom wiring diagrams and schematics using an SVG graphics software. The project's electrical components were integrated using soldering and electrical wiring techniques.
    • Collaborated with team-members to create project plans, integrate system components, and design 3D models.
    greenNetThumbnail
  • Sudoku Solver App Independent Passion Project

    Custom web app built to solve sudoku puzzles.

    • Designed and created a user-friendly front-end interface using HTML, CSS, and JavaScript.
    • Created functional flowcharts to develop a general sudoku solving algorithm.
    • Used JavaScript Classes and Object Oriented Programming concepts to implement backend logic and control front-end components, including buttons and menus.
    • Followed software development lifecycle activities, including the development of use case diagrams and descriptions; object analysis models; state diagrams; and object design patterns.
    SudokuSolverPreview
  • FPGA Egg Timer Project CARLETON COURSE PROJECT - DIGITAL ELECTRONICS

    Countdown timer programmed using Xilinx and uploaded to a Nexus4 DDR FPGA board.

    • Programmed modules and submodules in Verilog HDL, resulting in a working countdown timer.
    • Used Finite State Machine concepts and logic to implement different use cases of the timer including: setting, resetting, pausing and resuming the countdown time. Users were able to control the timer using momentary buttons and toggle switches on the FPGA board.
    • Programmed RGB LED sequences and intensities using Pulse Width Modulation techniques, causing the LEDs to change color depending on the time displayed on the board's 7-segment display.
    Nexus4FPGAThumbnail
  • Chonker Scrolling Game CARLETON COURSE PROJECT - INTRO. TO MICROPROCESSORS

    Scrolling game programmed in assembly language and executed on an emulated Intel x86 processor.

    • Implemented knowledge of registers, interrupts, loops, routines, and subroutines to produce a working scrolling game. The game's objective was to avoid rock obstacles by moving the player left or right as they moved down the screen.
    • Programmed a random number generator used to place the rock obstacles in the game environment.
    assemblyGameThumbnail
  • ATV Electrical Expansion Project INDEPENDENT PASSION PROJECT

    Installation of auxiliary LED headlights, hand warmers, and a custom control panel on a Yamaha ATV.

    • Created wiring diagrams and schematics to integrate new electrical devices (lights, hand warmers, fuses and relays) into the vehicle's existing wiring harness.
    • Constructed custom wiring harnesses connecting new electrical devices using soldering, cable management, and electrical wiring techniques.
    • Designed and fabricated steel mounting brackets for fastening new headlights and a custom control panel. Metal fabrication was performed using tools including a flux-cored welder, oxy-acetylene torches, angle grinders, drills, etc.
    yamahaATV
  • The AV (Audiovisual) ProjectIndependent Passion Project - Under Development

    Custom spectrum analyzer made using RGB LEDs and an Arduino microcontroller capable of supporting the FFT algorithm.

    • Implement theoretical knowledge of Digital Signal Processing concepts (Fourier series, Fourier transform, the FFT algorithm, Gibbs phenomenon, etc.) in a practical custom-built spectrum analyzer. The spectrum analyzer will convert an incoming audio signal into a real-time colorful display using RGB LEDs.
    • Improve communication and presentation skills by creating a tutorial webpage about digital signal processing theory and concepts used in the project.
    • Investigated the theory and mathematical methods behind the analysis and synthesis of continuous and discrete signals. Strong theoretical knowledge will be used to set appropriate parameters (window size, sample size, sample rate, etc.) when programming the microcontroller.
    TheAVProjectPreview
  • Pipe Inspection Robot Carleton Course Project - Intro. to Engineering Drawing

    3-wheeled robot used to travel through a pipe with a series of bends, inclines and obstacles.

    • Collaborated with team members to determine project requirements, constraints, and design plans.
    • Created concept sketches implementing the robot's features, including an articulating frame, battery housing, motor mount, etc.
    • Used Fusion 360 to model existing parts, develop 3D printed components, and model assemblies.
    • 3D printed and tested robot components using PLA material and an Anycubic 3D printer.
    • Tested various 3D printing parameters such as print speed and nozzle temperature, along with dimension tolerancing, to ensure proper fit and movement of components like wheels, bushings, and mating surfaces.
    PipeInspectionRobotThumbnail

Mini Projects & Tools

  • Smartphone Clock

    Repurposed an old smartphone by transforming it into a customizable clock.

    • Created custom clock GUI using HTML, CSS, and JavaScript.
    • Modeled and 3D printed a 2-part phone stand using FreeCAD and an Anycubic 3D Printer.
    TheAVProjectPreview