Introduction to Programming
For FRC Teams
As a programming mentor for FRC team 2910 Jack in the Bot, I developed this curriculum heavily based on the material our team uses to train new students. It is a personal goal to share the wealth of knowledge gained over the years with the broader FRC community, especially teams who may not have dedicated mentors. This course will guide you from the basics of Java through intermediate FRC programming, providing a solid footing for your season. While this curriculum is nearly identical to the one I co-developed for my work as a 2910 mentor, please note that this is a personal project and not an official FRC 2910 resource. My hope is that this guide is helpful to your team. Good luck, and happy coding!
-
Unit 1: Intro
-
Unit 2: Java Basics
-
Unit 3: Version Control and Troubleshooting
-
Unit 4: Object-Oriented Programming
-
Unit 5: Basic FRC Coding
-
Unit 6: Intermediate FRC Coding
-
Unit 7: Advanced FRC Coding
-
Swerve Hardware
-
Swerve Odometry
-
Swerve Kinematics
-
SwerveModule Class
-
SwerveDrivetrain Subsystem
-
WPILib Swerve Classes
-
Swerve Steering and Driving Controls
-
Robot-Oriented Controls
-
Field-Oriented Controls
-
Debugging Swerve Drive
-
Intro to Autonomous Code
-
Timed Movements Approach
-
Sensor-Based Movement
-
PID Deep Dive
-
Complex Movements with Command Groups
-
SendableChooser
-
PathPlanner
-
SysId Tool
-
AdvantageKit
-
Simulation with WPILibSimulator
-
Unit Testing
-
Advanced State Machines with Enums
-
Retake this course?
Retaking this course from the beginning will reset all of your tracked progress.