portfolio — 2014 to today

Thirteen projects, one habit: shipping working hardware.

Every entry below is a real system I designed, built, debugged, or repaired, documented with photos from the bench, the lab, and the field. Newest first. Use the filters to browse by discipline.

Project Pebble — Autonomous Lunar Mining Rover

May 2026 — Present
Moon Trades

I contribute to the development of Pebble, an autonomous lunar mining rover currently under active development. My role focuses on embedded systems engineering: electronics integration, sensor interfacing, firmware development, and system validation to support reliable operation in a robotic exploration platform.

The project involves rapid prototyping, hardware bring-up, and the integration of multiple subsystems, with an emphasis on modularity, reliability, and a scalable system architecture. As the project is ongoing, additional technical details remain confidential, with more to share upon public release.

KiCadControl SystemsBOM ManagementSensor Integration

Peltier Controller for Water Cooling

May 2026 — Present
Robbie Insurtech

A proof-of-concept thermoelectric cooling system to evaluate the feasibility of using a Peltier module for active water cooling in a compact forced-air application: an engineering exploration of thermal management techniques, control strategies, and system efficiency for future embedded cooling solutions.

I designed the complete electronic control system: a custom power stage driving a high-current Peltier module, embedded firmware for temperature regulation, and a PWM-based control algorithm that optimizes cooling performance while minimizing power consumption. The prototype integrates temperature sensors, a water circulation loop, heat sinks, and forced-air cooling to characterize thermal behavior under different operating conditions.

I assembled the prototype electronics, performed hardware validation, evaluated control strategies, and collected experimental data on cooling efficiency, response time, and overall performance, quickly turning an idea into a functional prototype through systematic engineering exploration.

Peltier ModulesPower ElectronicsPWM ControlHardware Troubleshooting

Robbie 3.0 — Fleet Electronics Upgrade

May 2026 — Present
Robbie Insurtech

Robbie 3.0 is the latest generation of an autonomous fleet of sensing and control devices for long-term environmental monitoring. The project upgrades the existing platform with a new moisture-sensing system while improving the hardware architecture, firmware, and overall reliability.

I designed and developed new PCBs for the Robbie 3.0 platform, integrated and validated the new moisture sensor, developed embedded firmware, and completed full system integration. I also designed and documented custom wire harnesses and interconnects to improve manufacturability, serviceability, and field reliability, then performed hardware bring-up, PCB validation, debugging, calibration, and field testing to ensure compatibility with the existing fleet.

I additionally implemented AI-assisted engineering workflows to generate and manage SmartBOMs, streamlining component selection, BOM management, documentation, and design validation while keeping engineering oversight throughout the project lifecycle.

KiCadPCB DesignWire HarnessesAnalog Signal ConditioningGitBOM Management

D4D Moisture Sensor — Firmware Development & Troubleshooting

Oct 2025 — May 2026
Robbie Insurtech

Firmware troubleshooting, correction, and ongoing development for a third-party D4D material moisture sensor, covering both the electronic and mechanical sides of the system. I analyzed existing firmware behavior, identified functional issues through experimental testing, and implemented corrective updates and enhancements.

Development was done in embedded C on an STM32 microcontroller: code refactoring, firmware upgrades, long-term maintainability improvements, and technical documentation. The sensor uses I²C together with an analog front-end that measures resistance to infer moisture content in solid materials. Troubleshooting included validating I²C transactions, ADC measurements, timing behavior, and signal integrity across the analog measurement stage.

I also designed a custom mechanical enclosure in Onshape focused on sensor protection, usability, and manufacturability, providing proper integration of the sensor, PCB, and connectors for reliable field operation.

STM32Embedded CI2CAnalog Front-EndOnshapeGit

Multi-Module PCB for a Wearable Device

Oct 2025 — Apr 2026
Morphace

Designed a modular PCB architecture in KiCad and developed C++ firmware to manage sensor acquisition, power control, and inter-module communication for a wearable skin-health device. The work included analog circuit design for the sensing front-end, BOM management, and hands-on bring-up and connector validation of the assembled boards.

KiCadC++ESP32Analog Circuit DesignBOM Management

Moisture Sensor Tester & Data Logger for Real-World Conditions

Aug 2025 — Dec 2025
Robbie Insurtech

A moisture-sensor testing and data-logging platform for real-world operating conditions, integrating a Raspberry Pi 5, a custom I²C-based D4D material moisture sensor, and a professional FLIR Systems moisture data logger for comparative validation.

The rig was tested at VentureLab in Markham, Ontario, inside an environmental chamber under controlled temperature, enabling repeatable, synchronized measurements across both sensors. Data acquisition and logging were implemented in Python using multithreading with mutex-based synchronization to coordinate sensor polling, align timestamps, and guarantee thread-safe access to shared data.

To read the FLIR reference instrument, the team built a camera-based capture workflow with a custom OCR post-processing algorithm that extracts numerical readings from the captured images. All measurement data was time-aligned, stored, and post-processed in a Python analysis pipeline for visualization plus comparative analysis of sensor accuracy, stability, and correlation against the reference instrument.

PythonRaspberry Pi 5Embedded LinuxSTM32MultithreadingI2COCRData Analysis

Command Line Interface for Embedded C on STM32 MCUs

Feb 2025 — Mar 2025
Rabbit Systems

A software library that creates a Command Line Interface (CLI) for STM32 and other embedded C microcontrollers. The library handles complete commands with arguments over any of the MCU's communication peripherals: UART, I²C, SPI, CAN, and more. Where those interfaces normally move only raw bytes, this library lets you define professional, structured commands for exchanging data across a distributed system.

Embedded CSTM32UARTCAN

Collision Avoidance System (CAS) for Racing Cars

Apr 2024 — Aug 2024
Rabbit Systems · for Racing Sciences Inc.

Racing cars need fast, reliable detection of nearby cars; at race speeds, side mirrors alone are not enough. Starting from a benchmark of a Bosch device, I designed and implemented a collision detection and avoidance prototype for racing applications.

The system integrates two Texas Instruments mmWave radar boards (AWR2944EVM) covering the blind spots and a bumper camera watching directly behind the vehicle, all connected over USB to an NVIDIA Jetson Nano Orin. The radars and camera stream data simultaneously using a multithreaded pipeline. The prototype was developed for Racing Sciences Inc. and tested on the bench, on the street, and mounted on the car.

mmWave RadarAWR2944EVMNVIDIA JetsonPythonC++Multithreading

TRIAXYS Wave Sensor Simulator Firmware

Nov 2023 — Mar 2024
Minard

A firmware repository that simulates the data stream of a TRIAXYS wave sensor, developed in remote collaboration with Ocean Data Systems in Cancun, Mexico. The simulator reproduces a complete data frame from a real TRIAXYS sensor so that a datalogger integrated with the sensor can be tested without the real hardware. Because the actual sensor was fixed to a remote buoy, in-situ testing was impractical, so the simulator made remote, repeatable testing of the datalogger possible.

C++ESP32ATMegaSerial Protocols

Command Line Interface (CLI) Library for C++ Microcontrollers

Apr 2023 — Oct 2023
Minard

A complete library for implementing a CLI on C++-based MCUs with 16-bit architectures. A buffer separates the command name from its arguments; a superclass called Command maintains the buffer and a vector of the commands available throughout program execution. Each command can be linked to an MCU function or process for setting parameters and retrieving values.

The library works with any communication interface: Serial, I²C, SPI, CAN, Modbus, and more. As each character arrives, it is added to the parser; when two command-terminator characters are received, the command and its arguments are separated and dispatched. Command names can follow NMEA and ANSI conventions, enabling professional command sets for any embedded system.

C++ESP32Atmel AVRSoftware Architecture

Data Logger Prototype for Maritime Deep-Sensing

2021 — 2023
Minard

A data logger system prototype for maritime deep-sensing applications, built to record the conductivity of seawater at depth. I developed the acquisition electronics and firmware, brought the board up on the bench, and paired the logger with a Java desktop interface for configuring the device and reviewing the captured data.

InstrumentationData LoggingJava GUIHardware Bring-Up

Weather Station for Astronomical Telescope Domes

May 2019 — Dec 2019
National Autonomous University of Mexico (UNAM) · Institute of Astronomy

A device for measuring temperature, pressure, humidity, and wind inside two-meter telescope domes. The system integrates an Aimotek anemometer, a BeagleBone Black embedded computer running Debian Linux, and a relay board. The BeagleBone reads and programs the anemometer, then publishes all measurements to an MQTT server in the main telescope control system.

To control the anemometer, the relay board emulates the user's keypad presses, so the whole instrument can be started and reprogrammed remotely from the telescope control room. The device was installed in the main telescope housing.

Embedded LinuxBeagleBone BlackPythonMQTTPCB Design

Reliable, Low-Power EKG System for Veterinary Use

Nov 2014 — May 2015
Autonomous University of San Luis Potosi (UASLP)

During my master's degree in Bioelectronics I was tasked with creating a reliable, low-energy EKG system. I built a complete analog signal-acquisition chain for human and animal EKG: an AD620 instrumentation amplifier, signal-conditioning circuits, and analog bandpass filters. The clean analog signal was digitized by an ATMega328 and transmitted over an RFIDx radio module to a PC, where the EKG was graphed in real time.

Results were validated against a BioPac reference device, and we obtained clean EKG readings from both humans and laboratory animals. I used the platform to test QRS-detection algorithms, later built a second design around low-power MAX4091 amplifiers and a PIC MCU, and developed a photoplethysmography device for laboratory animals using a Nonin OEM animal oximeter sensor and an ATMega2560.

Analog CircuitsAD620ATMegaMicrochip PICBioelectronicsRF Telemetry

Like what you see?

I'm open to embedded systems roles and contract work in Toronto and across North America.