-
Notifications
You must be signed in to change notification settings - Fork 0
Read-Me documentation update #3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
Capyblapy
wants to merge
3
commits into
main
Choose a base branch
from
readme-documentation-update
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,42 +1,48 @@ | ||
| # robot-base | ||
| FRC 9577's Template Repository for Robot Code | ||
|
|
||
| # How to use this template | ||
| This repositry is a github template repository. It represents the baseline code that FRC 9577 uses for our robots, including dependencies we use in our designs. To use our code, create a repository using this one as a template. | ||
|
|
||
| ## Repository Approach | ||
| The approach here is to minimize setup time for a developer. By leveraging the WPILib distributed docker container and through effective use of docker we limit the prerequisite install to just a few items. This approach is for development only and does not replace the driver station. We support both linux and Windows for development. (Currently ) | ||
|
|
||
| ## Installing Prerequsiites | ||
| This repository does not contain any tools. You need to install four tools to support your build: git, VSCode, make, and docker. | ||
|
|
||
| ### Installing on Linux | ||
| To install on linux, use your package manager to pick up git, make, and docker. Testing was done on git 2.43, make 4.3, and docker 27.3.1. | ||
|
|
||
| Both make and git come directly from the package manager (e.g. for ubuntu `apt install make git`). | ||
|
|
||
| VS Code is installation instructions are here: https://code.visualstudio.com/docs/setup/linux | ||
|
|
||
| Docker installation instructions are here: https://docs.docker.com/engine/install/ubuntu/ | ||
|
|
||
| ### Installing on Windows | ||
| Herein, we provide references to each of the windows installers:https://gnuwin32.sourceforge.net/packages/make.htmz | ||
| * git: https://git-scm.com/downloads/win | ||
| * make: https://gnuwin32.sourceforge.net/packages/make.htm | ||
| * docker: https://docs.docker.com/desktop/install/windows-install/ | ||
| * VSCode: https://code.visualstudio.com/docs/setup/windows | ||
|
|
||
| This is more manual than a linux install, but it's just 4 tools. | ||
|
|
||
| When installing git, choose the option to install bash. Always use bash as your windows terminal when using this repo, as we only test on bash. | ||
|
|
||
| ### Windows "funnies" | ||
| - Need to install make for everyone and add the make path manually to system paths. | ||
| - Need to build via external git bash terminal started as administrator. | ||
|
|
||
| # Updating this template | ||
| When a new version of tools or libraries becomes available, use the WPILIB VSCode plugin to update the files in the project. Then, open a pull request against main to merge your change in. | ||
|
|
||
| Sometimes there are updates not serviced by the WPILib plugin. In these cases, make the changes using editors and push the results to github. | ||
|
|
||
| This repository can also be forked. | ||
| # 2025-prototype-drivetrain | ||
| FRC 9577's code repository for their fall 2025 custom drivetrain project. | ||
|
|
||
| ## Repository Organization | ||
| This repository is organized to have 2 "primary" branches, these are non-temporary branches which are the basis of all other branches. | ||
|
|
||
| They are the following: | ||
| <br> **main** - Code that is known to work via testing, does NOT have any features that are still in development or half done. | ||
| <br> **development** - Code that is not stable enough for main, either it has features that are not completed or is not tested. | ||
|
|
||
| There are also "feature" branches, these branches are temporary for the development of specific features. The feature is listed in the name of the branch, this allows for parallel development of different features that may require the same files. Once a feature is finished and is tested it can be PRed into the development branch and then deleted. | ||
|
|
||
| Main can only be PRed into and cannot have any direct commits, development is usually the branch that is PRed into main. All feature branches are PRed into development after the feature is completed for final testing and integration. | ||
|
|
||
| The primary branches can be merged into the feature branches at any time to update config and readme files, to keep them the same across all branches (when it makes sense). When changing constants, please make those changes on development then cherry-pick or merge development into your branch to make sure there are no duplicated values. | ||
|
|
||
| ## Overall Goals & Definitions | ||
| The goal of the project is to create a stable drivetrain that can drive smoothly with short cycle times. | ||
| We will NOT have a configurable chassis. | ||
|
|
||
| ### Competitive Cycle Times | ||
| - "Cycle Time" is defined as "The time from the start of game piece control to scoring that game piece" | ||
| - Using "Competive" because the time changes depending on what game is being played. | ||
|
|
||
| ### Stability | ||
| - The ability to go fast without tipping & wobbling | ||
| - Little to no bounciness | ||
| - Control stability | ||
|
|
||
| ### Smooth Driving | ||
| - Don't stop to turn | ||
| - Follow a smooth path | ||
|
|
||
| ## Requirements | ||
| The requirements set out for the robot. | ||
|
|
||
| - The robot shall comply with the 2025 FRC rules, | ||
| - Shall have 6 wheels, | ||
| - Shall use wheels 4 inches in diameter, | ||
| - Shall have center wheels powered by gearboxes, | ||
| - Shall have outer wheels powered by timing belts connected to center wheels, | ||
| - Shall have a maximum speed of 18 ft/s, | ||
| - Shall stay in an upright orientation, | ||
| - Shall have a low center of gravity, | ||
| - Shall have a center of gravity close to the center of the vertical projection of the robot, | ||
| - **Shall use acceleration profiles**, | ||
| - Shall have an IMU, | ||
| - Shall be constructed from 2”x1” ⅛” wall aluminum tubing, | ||
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I recommend we use a simple feature branch workflow rather than this flow, which is similar to gitflow. Our repos are too short lived and our processes are so lightweight that distinguishing 'main' and 'develop' is of little value.