FTC Training Curriculum
Welcome to FTC Programming
Welcome to the comprehensive FTC (FIRST Tech Challenge) programming curriculum! This curriculum is designed to take you from complete beginner to advanced FTC programmer, covering both OnBot Java and Android Studio development environments.
Important Disclaimer
Official Documentation
- This curriculum is designed as a learning resource and guide
- For official documentation, specifications, and the most up-to-date information, please refer to the official FTC documentation
- If you have questions about FTC rules, hardware specifications, or official APIs, consult the official FIRST Tech Challenge resources
- Official documentation should always be your primary reference for competition rules and technical specifications
What is FTC?
FIRST Tech Challenge is:
- A robotics competition for students in grades 7-12
- A platform for learning real-world engineering and programming
- An opportunity to work with modern robotics hardware and software
- A chance to develop problem-solving and teamwork skills
- A pathway to careers in STEM fields
Curriculum Structure
This FTC curriculum is organized into two main development environments, each with comprehensive learning paths:
Learning Paths
- OnBot Java: Web-based development environment perfect for beginners. Learn robot hardware, basic programming, and autonomous control without complex setup.
- Android Studio: Professional development environment for advanced programming. Master advanced control theory, computer vision, and sophisticated autonomous behaviors.
OnBot Java Learning Path
Start with OnBot Java if you’re new to FTC programming:
- OnBot Java Setup: Learn FTC SDK basics, OpMode structure, and telemetry logging
- Robot Hardware: Master DC motors, servos, sensors, and hardware integration
- TeleOp Programming: Create driver-controlled robot behaviors and gamepad controls
- Autonomous Programming: Develop time-based and encoder-based autonomous routines
- Debugging & Best Practices: Learn debugging techniques, state machines, and code organization
Android Studio Learning Path
Progress to Android Studio for advanced programming:
- Android Studio Setup: Set up Android Studio, project structure, and version control
- Advanced Movement Control: Master PID control, odometry, path planning, and motion profiling
- Autonomous Programming: Learn command-based programming, async operations, and custom libraries
- Vision & Computer Vision: Implement camera usage, OpenCV, AprilTags, and machine learning
- Debugging & Best Practices: Advanced debugging, performance optimization, and software development practices
Prerequisites
Before starting FTC programming, you should have:
- Basic understanding of Java programming fundamentals
- Familiarity with object-oriented programming concepts
- Understanding of basic electronics and hardware
- Access to FTC robot hardware (or simulation environment)
- Willingness to learn and experiment with robotics
Getting Started
Ready to begin your FTC programming journey? Start with OnBot Java Setup, then continue with FTC SDK Basics to learn the fundamentals of FTC programming.