Computer Engineering · McMaster University
Zain Naqvi
Firmware & embedded systems engineer. I build the low-level code that brings hardware to life, and design the boards it runs on.
Selected Work
Five firmware and systems projects. Click any card for the full write-up.
01
Preemptive RTOS Kernel
A real-time kernel built from scratch on a Cortex-M4F (TM4C1294). Assembly context switcher, priority-based preemptive scheduler, semaphores and mutexes with priority inheritance, and a first-fit heap, all measured on hardware down to the cycle.
02
CAN Bus Intrusion Detection
A bare-metal IDS on an MSP432E401Y that flags malicious CAN traffic in real time. Five detectors split across the ISR and main loop, with roughly 5 microsecond detection latency verified through DWT cycle counting.
03
Linux PCI Device Driver
A Linux kernel driver for the QEMU EDU PCI device covering probe and teardown, character-device I/O, MSI interrupts, and DMA, with clean goto-based error unwinding and proper per-device state.
04
STM32U5 Secure Bootloader
A bare-metal secure bootloader on an STM32U585 (Cortex-M33) building a chain of trust with SHA-256 image verification, driving the hardware hash peripheral over DMA. Currently in development.
05
ToF 3D Spatial Mapping
A time-of-flight sensor system that reconstructs a 3D spatial map of its environment. Write-up coming soon.
About
I'm a Computer Engineering student at McMaster University working at the lowest layers of the stack, where firmware meets silicon. My focus is embedded firmware, RTOS and bare-metal systems, and silicon bring-up. I care most about the code that gets hardware running correctly and provably: schedulers, drivers, boot chains, and the timing and safety guarantees around them.
I've shipped real hardware across two robotics teams, McMaster RoboSub, where I lead electrical, and the Aerial Robotics and Drones Club, designing PCBs in Altium and working across CAN, SPI, I2C, and UART. My personal projects go deep on the same territory: a preemptive RTOS kernel, a CAN bus intrusion detection system, a Linux PCI driver, and a secure bootloader, all measured and verified on real hardware.
I'm looking for firmware, embedded systems, and silicon bring-up roles, the kind of work where getting the low level right is the whole job.
- Firmware: C / C++ / ARM Assembly / RTOS / Bare-metal
- Protocols: CAN / SPI / I2C / UART
- Hardware: PCB Design (Altium) / Oscilloscopes / MCUs
- Tooling: Keil / GDB / Git / Linux
- Bring-up & Debug: SWD/SWO / DWT cycle profiling / hardware verification
Let's build something.
Interested in firmware, robotics, embedded systems, or software engineering opportunities? I'd love to hear from you.
zainnaqvi.200621@gmail.com