Skip to main content

Harvard-Westlake- AMOGO x DOGO

· 3 min read
Jess Zarchi

Inspired by the 118 Everybot, Harvard-Westlake wanted to make simple, competitive designs for the VEX Robotics Competition Tipping Point.


Harvard-Westlake hosted three one-week long summer camps where ~12 students would come for a one-week intensive of robotics where we wanted to condense an entire season into one week. We split students into 4 groups and had two groups make AMOGO and two groups make DOGO. The goal of the summer camp is to teach students the importance of build quality and how it leads to consistency and longevity in every part of a robot.

During this one-week intensive, students learned build quality, and the importance of squaring drives, and had a full day and a half of tournaments where over 20 matches were run. Students learned to maintain their robots as screws would come loose and learned to iterate flaws in the design in an attempt to make it more consistent.

My role in the summer camp was to mentor students in build quality, maintain and iterate the example robots to be more consistent and easier to assemble, and develop software for the robots that gives simple-to-use controls for students who haven't driven a robot before. I also responded to community questions on the forums to make sure as much information as possible was clear about these robots.


There were two versions of the code for each robot, one made in VEXcode and one made in PROS.


The VEXcode versions of the code are much simpler and more digestible. This is what most teams use to program their robots, so I wanted this code to be easily understandable by someone who had seen very little/no code before. Everything is in a single file and all code relating to subsystems are bunched together so students can pick apart the code piece by piece.
AMOGO VEXcode - GitHub
DOGO VEXcode - GitHub


On the other hand, the PROS versions of the code are more complex. The code is split up into multiple files, where each subsystem has its own file. The code for the drive base was based on the first version of EZ-Template, which was my codebase that dealt with PID for getting the robot from point A to point B with very little setup.

The PROS version of the code also came with a more complex autonomous routine that could complete the Autonomous Win Point by itself. The Autonomous Win Point is a series of tasks that an alliance must complete during Autonomous to get an additional ranking point. Doing this task by yourself can guarantee more opportunities for additional ranking points. Because of the importance of solo AWP, we wanted to showcase that these simple robots could accomplish it.
AMOGO Solo AWP Autonomous Video
DOGO Solo AWP Autonomous Video


The CAD for each robot was also released so students could look at how different parts of the robot were assembled and see parts deep in the robot clearly. There were some unique build techniques done specifically on the drive, where screws were used instead of axles.


At the end of the day, VEX robotics is a sport where matches are played competitively. Everything else that was done for these robots was educational, but the end goal for all of this was to compete with a robot. Scrimmages were published of both example robots competing head to head, while I was operating DOGO.