Projects Summary Page

*Click on titles for more information on each project


Swerve Drive V2: Coaxial - 6/18/2026

This an improved version of separate swerve drive that is described below. This swerve drive has two "pods" that each have a wheel that can be oriented towards any angle.

This allows the robot to drive in any direction and rotate while doing so. To accomplish this, the robot uses inverse kinematics to figure out the exact angle and speed each wheel should be at to correctly drive. The applications of this ability can be seen in warehouses, automation, and an place where space is heavily restriced

Then, I used a PID loop to determine how quickly to rotate the module. Once the module is rotated to the correct place, a regression model is used to translate the desired velocity to a PWM value.


Swerve Drive V1 - Differential

Unlike the above project, this is a differential drive, meaning it uses the sum and difference of the two motors to either rotate, drive, or both. The coaxial drive accomplishes the same goal but has separate motors for rotation and driving. Differential drive had a few advantages over coaxial when I was initially choosing a design. The biggest reason was that there where more open source 3d printable designs. But the differential drive also has a torque advantage. Since you can use both motors to do the same action, you can essentially double torque when only driving or only rotating

The robot communicates via Bluetooth using the ESPNOW protocol, with one ESP32 on the robot, and another connected to joysticks.

Once I got far enough into the project, I realized that what had was imprecise, difficult to control and simply not high quality. So, I did a complete teardown, and built it back from the group up, designed my own coaxial drive

3 Wheel Omni Drive - 5/18/2025

By changing the velocities of the three wheels the robot is able to move in any direction while rotating, regardless of orientation, similar to my above project, the swerve drive. This project introduced me to Arduino, teaching me how to use C++, vector math, and wiring

Although a good first project, it had many issues: the motors were imprecise, the battery pack was large and clunky, and the wiring was very messy.

Rubiks Cube Solver - In progress