Tech Toolbox
  • Please Visit https://ftc-tech-toolbox.vercel.app/ for the new tech toolbox!!
    • Introduction
    • Choosing an IDE
    • Creating an OpMode
    • Motors and Encoders
    • Servos
    • Gamepad Controls
    • Drive Systems
    • Lynx Modules
    • Telemetry
    • Wireless Download
    • The Sleep Command
  • Please Visit the New Link
    • Tank Drive / Skid Steer (Part 1)
    • Mecanum Drive (Part 1)
    • Turrets
    • Linear Slides
    • Kicker
    • Active Intake / Sweepers
    • Flywheels / Shooters
  • Please Visit the new Link
    • Base Class (Step 1)
    • Module Classes (Step 2)
    • OpMode Classes (Step 3)
  • This domain is now depreciated and is no longer updated!
  • This domain is now depreciated and is no longer updated!
    • What is Localization?
    • General Odometry Logic
    • Tank (No Deadwheels)
    • Mecanum (No Deadwheels)
    • Deadwheel Odometry (Mecanum and Tank)
    • VSLAM
  • This domain is now depreciated and is no longer updated!
    • What is Control Theory?
    • Custom PID Loops
    • Essential Control Theory Concepts
    • Resources for Learning Advanced Control Theory
  • This domain is now depreciated and is no longer updated! Please visit this domain for the new TT!
    • Introduction
    • Mecanum Drive (Part 2)
    • Tank Drive (Part 2)
    • Introduction to Pure Pursuit
    • Pure Pursuit: Mecanum
    • Pure Pursuit: Tank
    • Advanced Pure Pursuit
    • Guided Vector Fields
    • Autonomous Movement Libraries
  • Sensors
    • IMU
    • Color Sensors
      • Advanced Sensing Code
    • Distance Sensors
    • Touch Sensor
  • Computer Vision
    • Setting up Camera/Intro to Computer Vision Tools
      • Intro to OpenCV
      • Vuforia
    • Streaming Frames
    • Color Thresholding
    • April Tags
    • Linear Regression
    • Machine Learning Toolchain
    • Object Distance Estimation
    • Object Tracking / Driving to an Object
    • Computer Vision Simulators
  • Simulators
    • Beta8397 Simulator
    • VRS
  • Cool Codebases
Powered by GitBook
On this page
  • About This Guide
  • How to Use This Guide
  • Asking for Help

Please Visit https://ftc-tech-toolbox.vercel.app/ for the new tech toolbox!!

This domain is now depreciated and is no longer updated! Please visit this domain for the new Tech toolbox!!! https://ftc-tech-toolbox.vercel.app/

NextIntroduction

Last updated 1 year ago

This domain is now depreciated and is no longer updated please visit this domain for the new Tech toolbox!!!

Resources/Prerequisites

  • - Starting from scratch

  • - Watch before proceeding. Lesson on the fundamental of FTC programming (opModes, running code, motors, servos)

About This Guide

This site is meant to be a comprehensive guide for all things software in FTC robotics, covering everything from beginner to highly advanced topics.

Our team noticed that in order to build a control system, teams must scavenge the internet from a multitude of sites to gain the necessary knowledge. To fix this issue, this guide will provide a one-stop shop to assist teams in constructing a solid control system. We accomplish this by not only providing our own explanation of a topic but by also linking several external resources which may be more comprehensive than the guide alone; thus giving you more time to actually learn the topic rather than finding resources.

To support teams in advancing their already established control systems, we have developed modules that delve into the theory and implementation of the more advanced software topics in FTC robotics.

Aside from understanding these topics, having the ability to implement these topics through code is essential to constructing a solid control system. Because of this, we provide implementations of every topic covered in the guide so that you can easily integrate these ideas into your control system. Moreover, we will extensively make use of case studies where we look into the software behind the robots of top teams by linking their demonstration videos as well as their code implementations.

How to Use This Guide

  • We will also provide a table of external resources that you should read before proceeding which may provide essential background knowledge before we expand on the topic at hand.

  • Read our explanation of the topic which may only expand on the background information provided to avoid redundancy.

  • Every topic provided will be paired with a code implementation, showing you can integrate the concept into your control system. Beyond this, we may also take a look at applications of this topic used by top FTC teams by linking their demo videos as well as their code bases so that you can take a look at what goes into building the software of a world-class robot.

  • Typically, at the end of the module, we will provide an exercise that will test your knowledge of the topic, typically through a code implementation, and provide the solution to the exercise.

Asking for Help

An important aspect of being successful in FTC robotics is not being afraid to ask for help when stuck with a problem or confused about a topic. Here are some helpful forums where you can ask for assistance and receive aid from experienced programmers:

At the top of most modules, there is a list of prerequisites that you should know before attempting to make sense of what is in the current module. All of the prerequisites point to other modules within the guide (living up to its one-stop-shop nature )

FTC Discord (ask in the programming-help channel) -

Official FTC Forum -

😉
https://ftc-tech-toolbox.vercel.app/
Learn Java For FTC
Official FTC Programming Resources
Official FTC Intro to Programming Video Series
GM0's Getting Started Section
5040's Intro to FTC Programming
STEM Robotics' Free Intro to FTC Programming Course
https://discord.gg/first-tech-challenge
https://ftc-community.firstinspires.org/