Skip to main content

Design Patterns

1) Intent Methods in Subsystems

Expose setPosition, home, percent — not raw motor calls.

2) Macro Commands

Compose sequences for common tasks (score, intake, climb).

3) Triggers as State Machines

Use triggers from sensors (beam breaks, positions) to gate actions.

4) Safety

  • Soft limits + neutral modes in subsystems
  • Deadman: .whileTrue() for manual power
  • Add .finallyDo() to stop motors

5) Logging

Annotate command start/finish and key setpoints for AdvantageScope.