top of page

Create Your First Project

Start adding your projects to your portfolio. Click on "Manage Projects" to get started

Autonomous Differential-Drive Ground Robot (In-Progress)

Project type

Robotics

Date

June, 2026

Overview

Built an autonomous ground robot from the ground up — literally from datasheets, with no external libraries — as the first phase of a larger aerial-ground deployment system inspired by NASA's Mars Ingenuity/Perseverance pairing. The ground unit handles autonomous navigation and obstacle avoidance; a drone phase is planned for fall.

What Makes It Different

Most hobbyist robotics builds lean on pre-built libraries for sensors and motor control. I wrote all firmware from scratch, working directly from component datasheets on Arduino and ESP32. That decision traded speed for depth — it meant understanding exactly how each sensor and driver communicates at the register level instead of trusting an abstraction layer, but it also meant every bug was mine to actually understand, not paper over with someone else's library fix.

Technical Approach
Obstacle detection: Three HC-SR04 ultrasonic sensors integrated via a custom scanAll() function
Control: Finite state machine (FSM) for behavioral control, PID-tuned drive motors
Platform: Arduino + ESP32, no external sensor/motor libraries
Challenges

Sensor cross-talk: Running three ultrasonic sensors close together meant one sensor's echo could be picked up by another, corrupting readings. Solving this meant working through the timing and sequencing of scanAll() so each sensor's ping-and-listen cycle didn't bleed into the next.

Learning curve of building from scratch: Without libraries to fall back on, every driver had to be built from the datasheet up — registers, timing diagrams, and all. Slower going than importing a library, but it forced a real understanding of how the hardware actually works, which paid off when debugging the cross-talk issue above.

Status

Recently completed the 3-sensor integration milestone. Occupancy grid mapping and a custom KiCad PCB are deferred to a later phase; the drone build is planned for fall semester.

Skills Demonstrated

Embedded systems (Arduino/ESP32) · from-scratch firmware development · sensor integration and timing debugging · FSM design · PID control tuning

Contact

I'm always looking for new and exciting opportunities. Let's connect.

  • GitHub
  • LinkedIn
Contact Me
bottom of page