· Full-stack

Learning to build end to end — from mechanical design and embedded firmware to the software that makes a machine move.

I'm Sam, a mechanical engineer (M.S., Purdue '26) interested in the space where hardware meets software. I like working across the whole stack of a robot — design, electronics, and control — and figuring out how the pieces fit together.

West Lafayette, IN ROS 2 · C++ · Python · SOLIDWORKS

Selected work

A robot I'm building now

Live · walking

Hexapod Robot

2025 — present

A 3D-printed, six-legged walking robot

A hexapod robot that extends an open source design from MakeYourPet. It drives 18 servos across six legs and ROS 2 Humble on a Jetson Orin Nano, with C++ firmware on a Pimoroni Servo2040 (RP2040) handling the low-level servo control over a USB binary protocol.

The control stack is deliberately modular — teleoperation feeds a gait generator, which feeds an inverse-kinematics solver, which feeds the servo driver. Each stage is its own ROS 2 node, so any piece can be tested in isolation. I re-derived the per-leg inverse kinematics for my own link geometry and implemented an alternating tripod gait for stable walking.

Current phase — autonomy

I'm now bringing the robot toward autonomous navigation using NVIDIA nvblox for real-time 3D mapping. The interesting challenge right now is compute: fitting live reconstruction and planning inside the Orin's on-board budget, and deciding what has to be trimmed or offloaded to keep everything running in real time.

  • ROS 2 Humble
  • Jetson Orin Nano
  • C++ firmware
  • RP2040 / Servo2040
  • Inverse kinematics
  • nvblox
  • SOLIDWORKS

Earlier projects

Things I've built before

Previously completed projects. Full write-ups are on the way.

  1. 01

    Senior Design — Interactive Dog Toy

    A mechanical dog toy, built for autonomous play. Inspired by the whack a mole arcade game, a toy pops in and out based on the dogs proximity. A custom collar using UWB localization allows the toy to track the dog's position and give data on dog movement.

    Purdue · Capstone
  2. 02

    LQR Self-Balancing Robot

    An inverted-pendulum balancer stabilized with a Linear–Quadratic Regulator — modeling the dynamics, tuning the controller, and landing it on real hardware.

    ME 578 · Digital Control
  3. 03

    Autonomous Boat Simulation — Virtual Robot X

    A virtual robotic boat in ROS 2 completing station-keeping, wayfinding, and acoustic-perception tasks, with thrusters driven by PID control and Kalman filtering.

    ME 597AS · Autonomous Systems
  4. 04

    Mechatronics Final — Autonomous Ball Robot

    A differential-drive robot that autonomously sorted colored balls into baskets for the ME 588 team competition — full design, fabrication, and Arduino GIGA control. Took First Place and Best Robot Design.

    ME 588 · Mechatronics
  5. 05

    Bed Box

    A personal build to handle the difficulties of living in a shared dorm. Scored tens of thousands of views on the school' subreddit.

    Personal