Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 5 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@ Arizona's Reference Build and Software Implementation for FRC Robots (read: "A-Z

## Installation

Installation instructions are found in the [INSTALL.md](INSTALL.md) file, and the [Getting
Started Guide](RBSI-GSG.md) includes the steps you'll need to do before taking your robot
Installation instructions are found in the [INSTALL.md](doc/INSTALL.md) file, and the [Getting
Started Guide](doc/RBSI-GSG.md) includes the steps you'll need to do before taking your robot
out for a spin. See the [Releases Page](https://github.com/AZ-First/Az-RBSI/releases) for
details on the latest release, including restrictions and cautions.

Expand All @@ -29,7 +29,7 @@ The purpose of Az-RBSI is to help Arizona FRC teams with:
## Design Philosophy

The Az-RBSI is centered around a "Reference Build" robot that allows for teams
to communicate quickly and effectivly with each other about gameplay strategy
to communicate quickly and effectively with each other about gameplay strategy
and troubleshooting. Additionally, the consolidation around a standard robot
design allows for easier swapping of spare parts and programming modules.

Expand All @@ -44,11 +44,11 @@ effective logging for troubleshooting.

* [WPILib](https://docs.wpilib.org/en/stable/index.html) -- FIRST basic libraries
* [AdvantageKit](
https://github.com/Mechanical-Advantage/AdvantageKit/blob/main/docs/WHAT-IS-ADVANTAGEKIT.md)
https://docs.advantagekit.org/getting-start ed/what-is-advantagekit/)
-- Logging
* [CTRE Phoenix6](
https://v6.docs.ctr-electronics.com/en/stable/docs/api-reference/mechanisms/swerve/swerve-overview.html)
/ [YAGSL](https://yagsl.gitbook.io/yagsl) -- Swerve drive library
/ [YAGSL](https://docs.yagsl.com/) -- Swerve drive library
* [PathPlanner](https://pathplanner.dev/home.html) / [Choreo](
https://sleipnirgroup.github.io/Choreo/) -- Autonomous path planning
* [PhotonVision](https://docs.photonvision.org/en/latest/) / [Limelight](
Expand Down
10 changes: 5 additions & 5 deletions build.gradle
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
plugins {
id "java"
id "edu.wpi.first.GradleRIO" version "2026.1.1"
id "edu.wpi.first.GradleRIO" version "2026.2.1"
id "com.peterabeles.gversion" version "1.10.3"
id "com.diffplug.spotless" version "8.0.+"
id "io.freefair.lombok" version "9.1.+"
id "com.google.protobuf" version "0.9.+"
id "com.diffplug.spotless" version "8.1.0"
id "io.freefair.lombok" version "9.2.0"
id "com.google.protobuf" version "0.9.6"
}

java {
Expand Down Expand Up @@ -64,7 +64,7 @@ def deployArtifact = deploy.targets.roborio.artifacts.frcJava
wpi.java.debugJni = false

// Set this to true to enable desktop support.
def includeDesktopSupport = false
def includeDesktopSupport = true

// Defining my dependencies. In this case, WPILib (+ friends), and vendor libraries.
// Also defines JUnit 5.
Expand Down
33 changes: 23 additions & 10 deletions INSTALL.md → doc/INSTALL.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,17 +13,24 @@ already have a GitHub account where you will store your 2026 FRC robot code.

### Creating a 2026 FRC project from the Az-RBSI Template

From the [Az-RBSI GiuHub page](https://github.com/AZ-First/Az-RBSI/), click the "Use this template" button in the upper right corner of the page.
From the [Az-RBSI GiuHub page](https://github.com/AZ-First/Az-RBSI/), click the
"Use this template" button in the upper right corner of the page.

In the page that opens, select the Owner (most likely your team's account) and
Repository name (*e.g.*, "FRC-2026" or "REBUILT Robot Code" or whatever your team's naming convention
is) into which the create the new robot project. Optionally, include a
description of the repository for your reference. Select "public" or "private"
repository based on the usual practices of your team.
Repository name (*e.g.*, "FRC-2026" or "REBUILT Robot Code" or whatever your
team's naming convention is) into which the create the new robot project.
Optionally, include a description of the repository for your reference. Select
"public" or "private" repository based on the usual practices of your team.

The latest release of Az-RBSI is in the `main` (default) branch, so it is
recommended to **not** select the "Include all branches" checkbox.

If you want to keep caught up on dependencies, you will need to ENABLE the
Dependency Graph selection under the "Advanced Security" tab of the repository
Settings.

<img src="dependency_enable.png" alt="Enable Dependency Graph" width="50%" />

--------

### Software Requirements
Expand All @@ -32,22 +39,22 @@ The Az-RBSI requires the [2026 WPILib Installer](
https://github.com/wpilibsuite/allwpilib/releases) (VSCode and associated
tools), 2026 firmware installed on all hardware (motors, encoders, power
distribution, etc.), the [2026 NI FRC Game Tools](
https://github.com/wpilibsuite/2026Beta)
https://www.ni.com/en/support/downloads/drivers/download.frc-game-tools.html)
(Driver Station and associated tools), and the [2026 CTRE Phoenix Tuner X](
https://v6.docs.ctr-electronics.com/en/stable/docs/tuner/index.html). Take a
moment to update all software and firmware before attempting to load your new
robot project.
moment to update all software and firmware to the latest versions before
attempting to load your new robot project.

Please note that you need these _minimum_ versions of the following components:

* WPILib ` v2026.1.1-beta-1`
* WPILib ` v2026.2.1`
* RoboRIO image `FRC_roboRIO_2026_v1.2`

--------

### Setting up your new project

When your new robot code respository is created, it will have a single commit
When your new robot code repository is created, it will have a single commit
that contains the entire Az-RBSI template for the current release. (See the
[Az-RBSI Releases page](https://github.com/AZ-First/Az-RBSI/releases) for more
information about the latest release.)
Expand Down Expand Up @@ -101,6 +108,12 @@ method are encouraged to submit bug reports and code fixes to the [Az-RBSI
repository](https://github.com/AZ-First/Az-RBSI).


--------

### Getting Started with your Robot Code

See the Az-RBSI [Getting Started Guide](RBSI-GSG.md) for next steps.

--------

### Updating your project based on the latest released version of Az-RBSI
Expand Down
27 changes: 19 additions & 8 deletions RBSI-GSG.md → doc/RBSI-GSG.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,10 +41,16 @@ modifications to extant RBSI code will be done to files within the

### Tuning constants for optimal performance

4. HHHH

4. Over the course of your robot project, you will need to tune PID parameters
for both your drivebase and any mechanisms you build to play the game.
AdvantageKit includes detailed instructions for how to tune the various
portions of your drivetrain, and we **STRONGLY RECOMMEND** you work through
these steps **BEFORE** running your robot.

* [Tuning for drivebase with CTRE components](https://docs.advantagekit.org/getting-started/template-projects/talonfx-swerve-template#tuning)
* [Tuning for drivebase with REV components](https://docs.advantagekit.org/getting-started/template-projects/spark-swerve-template/#tuning)

Similar tuning can be done with subsystem components (flywheel, intake, etc.).

5. Power monitoring by subsystem is included in the Az-RBSI. In order to
properly match subsystems to ports on your Power Distribution Module,
Expand All @@ -55,12 +61,17 @@ modifications to extant RBSI code will be done to files within the
instantiation](
https://github.com/AZ-First/Az-RBSI/blob/38f6391cb70c4caa90502710f591682815064677/src/main/java/frc/robot/RobotContainer.java#L154-L157) in the `RobotContainer.java` file.

6. All of the constants for needed for tuning your robot should be in the
`Constants.java` file in the `src/main/java/frc/robot` directory. This file
should be thoroughly edited to match the particulars of your robot. Be sure
to work through each section of this file and include the proper values for
your robot.

6. In the `Constants.java` file, the classes following `RobotDevices` contain
individual containers for robot subsystems and interaction methods. The
`OperatorConstants` class determines how the OPERATOR interacts with the
robot. `DriveBaseConstants` and `FlywheelConstants` (and additional classes
you add for your own mechanisms) contain human-scale conversions and limits
for the subsystem (_e.g._, maximum speed, gear ratios, PID constants, etc.).
`AutoConstants` contains the values needed for your autonomous period method
of choice (currently supported are MANUAL -- you write your own code;
PATHPLANNER, and CHOREO). The next two are related to robot vision, where
the vision system constants are contained in `VisionConstants`, and the
physical properties (location, FOV, etc.) of the cameras are in `Cameras`.

--------

Expand Down
Binary file added doc/dependency_enable.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
7 changes: 7 additions & 0 deletions src/main/deploy/apriltags/2026-none.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"tags": [],
"field": {
"length": 16.4592,
"width": 8.2296
}
}
Loading