This repository contains the C++ codebase for the Marianopolis robotics team competing in the 2025 CRC Robotics Competition. The code is designed to be uploaded via the Arduino IDE to control our custom-built robot.
You can explore the full CAD assembly of the 2025 robot on Onshape using the link below:
👉 🔗 View Full Robot CAD on Onshape
| File | Description |
|---|---|
epsilon25.ino |
Main Arduino sketch files for robot control. epsilon25.ino contains key pin definitions and hardware wiring documentation. |
drive25.cpp, drive25.h |
Implements the robot drive system including high/low speed modes and joystick control. |
button.cpp, button.h |
Debounce logic and button handling for various input triggers. |
cu.sh, mon.sh |
Utility shell scripts for uploading and monitoring serial output from the Arduino. |
- The left joystick allows the pilot to toggle between high-speed and low-speed drive modes.
- Enhances control during precise maneuvering tasks or full-speed traversal.
- A custom-built PID (Proportional-Integral-Derivative) controller ensures accurate and stable vertical positioning of the robot's arm.
- Encoder feedback is used to dynamically adjust the motor output and maintain the target height with minimal overshoot or oscillation.
- Separated into
.cppand.hfiles for better organization, maintainability, and code reuse. - Input handling, drive control, and PID logic are encapsulated for clarity.
- This is a library of commands that are specific to the CRCArduino supported by the official Canadian Robotics Competition. 👉 🔗 View the Wiki page for more info!
- We use VEX Victor SPX motor controllers for reliable motor actuation.
- We use 2 goBilda 5202 Series Yellow Jackets (which have a 6mm D-Shaft) at 30RPM and 60RPM for the main arm joints. They come with built-in quadrature encoders for PID controls. The specifications of these FTC legal motors are available here.
- Detailed pin mappings, connection instructions, and setup notes can be found in
epsilon25.ino.
- Install Arduino IDE: Download here.
- Install dependencies: This code requires the Encoder library by Paul Stoffregen. Make sure to install it in the Arduino IDE
- Clone this repository:
git clone https://github.com/dwei-exe/2025-Robot-Controls.git
