Programming Lessons
We have organized our programming content into lesson format to make it easy for new FRC programmers to get up to speed. These lessons assume that you know the basics of Java. If you don't know any Java, there are a ton of free resources online. We have had a lot of people like the video tutorials from thenewboston on YouTube. You can check those out here.
- Getting Started
- Lesson 1: Setting Up the Environment
- Lesson 2: Creating a New Project and Exploring the Main Robot Class
- Lesson 3: Using Motor Controllers
- Lesson 4: Getting Joystick Input
- Lesson 5: Keeping Track of Variables
- Lesson 6: Using Objects
- Lesson 7: Limit Switches and Digital Input
- Lesson 8: Potentiometers and Analog Input
- Lesson 9: More about Digital and Analog Inputs
- Lesson 10: Drive Trains
- Lesson 11: Mecanum Drive
- Lesson 12: Recap
- Lesson 13: Git and Version Control
- Lesson 14: Debugging Robot Code
- Lesson 15: Keeping Track of State & Calibration
- Lesson 16: Applications of States
- Lesson 17: Timing
- Lesson 18: Intro to Encoders
- Lesson 19: Using the Gyro
- Lesson 20: Using Pneumatics
- Lesson 21: Threading
- Lesson 22: PID Controllers
- Lesson 23: Recap
- Lesson 24: Applying PID Controllers to the Drive Train
- Lesson 25: Advanced Joystick Management
- Lesson 26: Camera Processing
- Lesson 27: Awesome LEDs!
- Lesson 28: Rahs
- Lesson 29: Modifying WPI Libraries / Building Wrappers
- Lesson 30: Hardware Fail Detection
- Lesson 31: Dead Reckoning
- Lesson 32: Integrating Dead Reckoning with Drive Control
- Lesson 33: "DriveMux"
- Lesson 34: Virtualization Technology
- Lesson 35: Custom Dashboards
- Lesson 36: One Well Oiled Machine