Robot code for 2022 FRC Season
IntakeSubsystem
ClimberSubsystem
SwerveDriveSubsystem
argos_lib::swerve::Optimize
FileSystemHomingStorage
ShooterSubsystem
shooterRange
ShooterSubsystem::AutoAim
HomeHoodCommand
FSHomingStorage
AutoSelector
field_points
When commissioning a new robot, you should set the instance type to either "Competition" or "Practice" by creating a text file readable by lvuser
on the RoboRIO at path /home/lvuser/robotInstance
. The content of this file should be just the text Competition
or Practice
with no whitespace preceding. If no valid instance is found at runtime, competition instance will be used and an error will be generated.
See vision readme for information on which pipelines to use and which indices to install these pipelines on.
This project uses pre-commit to check code formatting before accepting commits.
First install the prerequisites:
pip packages:
~/.bashrc
by running vim ~/.bashrc
PATH=$PATH:$LOCALAPPDATA/Programs/Python/Python39/Scripts/
(change Python39
to match your python version)
$LOCALAPPDATA/Programs/Python/Python39/Scripts/
in the above example) depends on your Python installation. If y ou do the pip install
steps first, pip will print the path you need to add.INSERT
at the bottom of the window to indicate you're editing in insert mode:wq
and press Entersource ~/.bashrc
to update your sessionpip install wpiformat
pip install clang-format
pip install pre-commit
Make sure to run pip install <package>
commands in an administrator terminal if installing in windows
Then initialize:
pre-commit install
pre-commit run
The first run may take a moment, but subsequent automatic runs are very fast.
You'll now have the linter run before each commit! For compatibility with Windows, we recommend the pip version of clang-format, but wpi-format will find any installed clang-format
binary in the system path.
Driver: | Button | Function |
---|---|---|
Left JS X | Drive | |
Left JS Y | Drive | |
Right JS X | Turn | |
Right JS Y | Unused | |
DPad Up | Unused | |
DPad Right | Move Pre-Climb Forward One Position | |
DPad Down | Confirm climb | |
DPad Left | Move Pre-Climb Backward One Position | |
A | Home Swerve (hold with B and X) | |
B | Home Swerve (hold with A and X) | |
X | Home Swerve (hold with A and B) | |
Y | Field Home (hold) | |
LB | Hold For Robot Centric | |
RB | Reverse Intake | |
LT | Shoot | |
RT | Intake | |
Back | Swap (hold with Start) | |
Start | Swap (hold with Back) | |
Left JS Button | Unused | |
Right JS Button | Unused |
Operator: | Button | Function |
---|---|---|
Left JS X | Manual Aim | |
Left JS Y | Manual Hood | |
Right JS X | Climbing Hooks | |
Right JS Y | Climbing Arm | |
A | Home Turret (hold with X and B) + Lower Arm | |
B | Home Turret (hold with X and A) + Extend Hook | |
X | Home Turret (hold with A and B) + Retract Hook | |
Y | Home Hood (hold) | |
DPad Up | Front Close Up Shot | |
DPad Right | Right Close Up Shot | |
DPad Down | Back Close Up Shot | |
DPad Left | Left Close Up Shot | |
LB | Move Pre-Climb Backward One Position | |
RB | Move Pre-Climb Forward One Position | |
LT | Unused | |
RT | Vision Target | |
Back | Swap (hold with Start) | |
Start | Swap (hold with Back) | |
Left JS Button | Unused | |
Right JS Button | Unused |
As of the end of the 2022 season, we're using the following dependencies:
This software is licensed under the BSD 3-clause license. If you would like to use this software under the terms of a different license agreement, please contact us.