Programming Level 3 - Advanced Systems Integration

Real FRC software architecture (IO abstraction, telemetry, testing), vision, and autonomy

Table of content
  1. Learning Objective
  2. Prerequisites
  3. Primary Resources
  4. Tasks
  5. Level 3 Completion Requirements

Learning Objective

Design robot software using an IO-abstraction layer that isolates hardware access behind an interface (the pattern top teams like 6328's AdvantageKit use, enabling simulation and log replay), add telemetry/data logging and unit tests to that code, integrate a vision coprocessor (PhotonVision or Limelight) for target tracking, create advanced autonomous behaviors with dynamic trajectory generation, and lead cross-functional integration with mechanical and electrical systems. This level typically takes a full season and centers on a capstone project reviewed and signed off by a mentor -- this is where students move from following instructions to operating independently and making informed architecture tradeoffs.

Prerequisites

Primary Resources

Tasks

  1. Software Architecture & Telemetry

    • Isolate hardware access behind an IO interface (an IO-abstraction layer)
    • Add telemetry/data logging to robot code
    • Replay a logged match in simulation using logged inputs
    • Manage complex state transitions
  2. Testing Practices

    • Write unit tests for subsystem code that run in simulation
    • Participate in a code review as both author and reviewer
  3. Vision Processing

    • Set up a vision coprocessor (PhotonVision or Limelight) and camera
    • Implement target detection and pose estimation
    • Develop vision-based navigation or alignment
    • Optimize vision processing latency and reliability
  4. Advanced Autonomy

    • Create dynamic trajectory generation (on-the-fly path adjustments)
    • Develop multi-mode autonomous systems selectable before a match
    • Handle complex game strategies in autonomous
  5. Systems Integration

    • Lead software-hardware integration with the mechanical and electrical teams
    • Develop system diagnostics using telemetry/logging
    • Document integration procedures
    • Capstone project: independently design and implement a major robot software feature (e.g. vision-guided autonomous or an IO-abstracted subsystem), reviewed and signed off by a mentor

Level 3 Completion Requirements

← Back to Programming Training