Selected Work
RoboticsEmbedded馃弳 1st place 路 12 teams

Autonomous Racecar & Real-Time Operating System

Won 1st place: custom RTOS, sensor fusion, and CAN-networked autonomous drive

CFreeRTOSCANRTOSSensor FusionWi-FiCustom differential drive racecarTM4C123 (ARM Cortex-M4)LiDARIR sensorsIMU
1st place 路 12 teams
Autonomous Racecar & Real-Time Operating System
Role
RTOS kernel 路 sensor fusion 路 CAN networking
Timeline
Jan 2026 - May 2026
Context
Course project
Stack
C 路 FreeRTOS 路 CAN 路 RTOS

Overview

A custom autonomous differential-drive racecar that won 1st place against 12 teams. The system runs on a preemptive RTOS kernel built from scratch and navigates the track using multi-rate sensor fusion of LiDAR, IR, and IMU data.

The Problem

The race is a head-to-head autonomous sprint: stay on the track, hold speed and heading, and never crash, all under hard real-time deadlines. Rather than run the driving logic on a bare-metal superloop, I built a real operating system underneath it, so perception, control, and communication could each run as independent, priority-scheduled tasks with predictable timing.

What We Did

Preemptive RTOS kernel

Built from scratch: 8-level priority scheduling with PendSV context switching, blocking semaphores, and an SVC process loader. A FAT file system logs diagnostic data, and threads run with <1 碌s jitter.

Autonomous navigation

Multi-rate sensor fusion combines LiDAR, IR, and IMU as concurrent RTOS threads to track the course. A PD motor controller holds precise speed and heading through the turns.

Dual-board CAN communication

A CAN bus links the two microcontrollers, splitting perception and control across boards so neither loop starves the other.

Wi-Fi telemetry & control

A Wi-Fi server handles remote data logging and start/stop status acquisition, so runs can be triggered and reviewed without touching the car.

Demo

In the heat of the race we forgot to hit record, but trust me: Tweinstein was all overtakes and inside-lane hugging. This clip runs an earlier controller that we improved a lot for the final.

Gallery

The team on race day, with Elijah Silguero, Aditya Pulipaka, and Rayan Ahmed.
The team on race day, with Elijah Silguero, Aditya Pulipaka, and Rayan Ahmed.
About to overtake a competitor.
About to overtake a competitor.
Post-race teardown. The parts had to be returned.
Post-race teardown. The parts had to be returned.
The car during the final race.
The car during the final race.

Results

  • 馃弳 1st place out of 12 teams.
  • A from-scratch preemptive RTOS running the full autonomous stack (perception, control, and networking) as concurrent tasks.
  • Honest limitation: tuning the multi-rate fusion and PD gains was heavily empirical, and the control loop is calibrated to this specific track.