Skip to content
This repository was archived by the owner on Nov 19, 2025. It is now read-only.

the2nake/foundry-high-stakes

Repository files navigation

3818D High Stakes Codebase

Watch our reveal video! (click below)

Features

Teleop

  • Control code for tank, asterisk and X drivetrain types

Motion Algorithms

  • Easy-to-use PID classes

  • Generic odometry-based PID motion for holonomic drivetrains

  • Non-overlapping Pure Pursuit implementation

    • with tracked position interpolation to prevent point skipping
  • 2D Motion Profiling for holonomic drives

    • with support for any linear profile
    • with angular acceleration minimization
  • Path generation using uniform Catmull-Rom spline

    • centripetal + chordal coming soon
  • Heading interpolation for splines

    • lerp from control points
  • Trapezoidal linear motion profile generation

    • time and distance parameterization

Sensors

  • Abstractions for gyroscopes and rotation encoders
  • Filtered gyroscope class using modular arithmetic averages
  • Custom 2-tracker odometry algorithm for higher tracking accuracy
  • Sensor fusion with 2 IMUs with the KFOdometry class

Math and Logic

  • Extensible state machine implementation
  • Reliable ExitCondition class
  • Linear and angular balancing for teleop "arcade" style movement

Utils

  • Logging with colour support
  • Generic AutoUpdater for updating odometry, PID, exit conditions, etc.
  • A variety of miscellaneous functions such as shorter_turn and clamp_distance

Dependencies

Tests

ccache g++

plot.py

ffmpeg

Python (via pip)

pros-cli matplotlib PyQt6

About

codebase for team 3818D during V5RC High Stakes (2024-25)

Resources

Stars

Watchers

Forks

Languages