Gray Matter LogoGray Matter Workshop

Gray Matter Coding Workshop

Quick Note

All underlined text and images of code or products will have built-in links to resources

Before You Begin

This workshop requires specific software and hardware. Review prerequisites before starting to ensure you have everything needed.

Why Are We Here?

Learn FRC's Best Programming Practices

Master industry-standard coding patterns, command-based architecture, and proven development workflows that successful FRC teams use.

Build Competition-Winning Robots

Develop reliable, maintainable code that performs under pressure and helps your team succeed at districts, regionals and FIRST Championship.

Target Audience & Goals

Who This Workshop Is For

This workshop is designed for FRC Teams using Java and CTRE Hardware.

What You'll Learn

  • • Code architecture and best practices
  • • Subsystems structure and organization
  • • Command-based programming framework
  • • PID tuning techniques
  • • Libraries and framework usage
  • • Hardware integration with CTRE devices
  • • Motion profiling and control
  • • Real-world competition implementation

Our Mission

This site was created by Team 5712, Hemlocks Gray Matter, with support from its friends as a resource to cover introductory to advanced topics while providing a clear learning and implementation plan. We are excited for you to learn code architecture, command-based programming, and more!

Choose Your Workshop

2

Workshop #2

Advanced topics including swerve drive, vision systems, path planning, and data logging.

Creating a Swerve Drive Project

Set up holonomic drive with independent module control

Adding PathPlanner

Integrate autonomous path planning and trajectory following

Vision Options

Compare Limelight, PhotonVision, and AprilTag approaches

Implementing Vision

Add camera integration and pose estimation to your robot

Logging Options

Explore AdvantageKit, WPILib logging, and telemetry systems

Implementing Logging

Set up comprehensive data logging for debugging and analysis

Vision-Based Shooting

Calculate dynamic shooter angles using vision targeting

We use PostHog analytics with user-identifying features disabled to improve our site. Data is aggregated and not used to identify you. You can accept or reject analytics.