From 80e3a863b436aea431a28ac6fb98142664a51f89 Mon Sep 17 00:00:00 2001 From: Nilesh Agarwalla Date: Wed, 18 Sep 2024 14:24:20 -0400 Subject: [PATCH] Updated documentation --- readme.md | 45 ++++++++++++------- src/main/deploy/pathplanner/readme.md | 3 ++ src/main/java/frc/robot/controls/readme.md | 2 + src/main/java/frc/robot/readme.md | 6 +++ .../frc/robot/subsystems/vision/readme.md | 3 ++ 5 files changed, 42 insertions(+), 17 deletions(-) create mode 100644 src/main/deploy/pathplanner/readme.md create mode 100644 src/main/java/frc/robot/controls/readme.md create mode 100644 src/main/java/frc/robot/readme.md create mode 100644 src/main/java/frc/robot/subsystems/vision/readme.md diff --git a/readme.md b/readme.md index 9b531ebb..43fcaaa0 100644 --- a/readme.md +++ b/readme.md @@ -2,21 +2,48 @@ This is the top-level folder for the DevilBotz robot code The code uses Java WPILib. +# Goals/Features +* Extensibility and Reusability + * One code base, multiple robots +* Debuggability + * Logging + * Simulation +* Vision Based Odometry +* Odometry-based Path Following + +# General Resources: +* [WPILib Documentation](https://docs.wpilib.org/en/stable/) +* [DevilBotz 2876 Standard Laptop Configuration](https://docs.google.com/document/d/1NRJyu0b7zgzJpNy1R-b7AjI3fnhwZ_R6fZo0EVbo2pM) +* [FRC Programming in WPILib](https://youtube.com/playlist?list=PL4GNHenJg9JD5xdRxByaZZEZP1PPajPeV&si=1dgx1ZFQP8GEq4w_) +* [Git Tutorial](https://learngitbranching.js.org/) +* [Java Tutorial](https://youtube.com/playlist?list=PLZPZq0r_RZOMhCAyywfnYLlrjiVOkdAI1&si=ImrjG_c4-wThJqy3) + +* Useful Resources: +* [Crescendo 2024 Main Electrical Components](https://docs.google.com/spreadsheets/d/1jhis3_a5TAV7oP3p6C41bP5yMevQPRnBtGeEiesHzKM) +* [Crescendo 2024 Hardware/Software Calibration](https://docs.google.com/document/d/1msJO2dKCxqzbMlSSOtfs8W_ITjltEbtXaQBxc-CpNMo) + # Getting Started 1. Install [WPILib](https://docs.wpilib.org/en/stable/docs/zero-to-robot/step-2/index.html) 1. Install Git 1. Windows 1. MacOS 1. Get Code from GitHub + 1. Create GitHub Account (if you don't already have one) + 1. Start WPILib VSCode + 1. Clone Repository + 1. Login to GitHub Account (if prompted) + 1. Repo: https://github.com/DevilBotz2876/Crescendo2024 + * Note: The initial compilation will take a while because of all the dependencies that need to be downloaded. If all works well, in the Terminal view at the bottom, you should see: 1. Simulating the Code 1. Starting a Simulation * "F5" starts the simulation * Alternate Steps: * "Ctrl-Shift-P" or "Command-Shift-P" * "Simulate Robot Code" - * Check Only: "Sim GUI" + * Enable: "Sim GUI" * If you get the following error: "cannot find frc.robot.main", then: * "Ctrl-Shift-P" --> "Clean Language Server Workspace" + * Optional: Enable DriverStation to better mimic real world usage 1. Robot Simulation (aka Sim GUI) Overview 1. Configure XBox Controller 1. Make sure joystick is in "X-Box Mode". Plug in Joystick. @@ -49,22 +76,6 @@ The code uses Java WPILib. 1. Autonomous 1. AdvantageScope -1. Contributing to the Repo - 1. [Optional] Create/Login to GitHub - 1. Request write access to the repo - 1. Configure git inside VS Code - * Username - * Email - -* Separate document on contibuting to Repo - - -# Useful Resources: -* [FRC Programming in WPILib](https://youtube.com/playlist?list=PL4GNHenJg9JD5xdRxByaZZEZP1PPajPeV&si=1dgx1ZFQP8GEq4w_) -* [Git Tutorial](https://learngitbranching.js.org/) -* [Java Tutorial](https://youtube.com/playlist?list=PLZPZq0r_RZOMhCAyywfnYLlrjiVOkdAI1&si=ImrjG_c4-wThJqy3) -* [WPILib Documentation](https://docs.wpilib.org/en/stable/) - # Directory Structure * [src/main](src/main): All of the robot code and config files are here * [vendordeps](vendordeps): Contains the various external libraries and versions that the code base utilizes. diff --git a/src/main/deploy/pathplanner/readme.md b/src/main/deploy/pathplanner/readme.md new file mode 100644 index 00000000..54514e10 --- /dev/null +++ b/src/main/deploy/pathplanner/readme.md @@ -0,0 +1,3 @@ +# Useful Resources: +* [PathPlanner](https://pathplanner.dev/pathplanner-gui.html) +* [Crescendo 2024 Autonomous Routines](https://docs.google.com/document/d/1YG0RpWz_kYT4aMvY1ALhe9GsHA7w0coU_XH6KsEIKpw) \ No newline at end of file diff --git a/src/main/java/frc/robot/controls/readme.md b/src/main/java/frc/robot/controls/readme.md new file mode 100644 index 00000000..36e1cff8 --- /dev/null +++ b/src/main/java/frc/robot/controls/readme.md @@ -0,0 +1,2 @@ +# Useful Resources: +* [Crescendo 2024 Driver Controls](https://docs.google.com/document/d/1A22hMpvmXuujwkwF299oZQ94aNbzZQalUD1ifmwRZtk) \ No newline at end of file diff --git a/src/main/java/frc/robot/readme.md b/src/main/java/frc/robot/readme.md new file mode 100644 index 00000000..251d7d9c --- /dev/null +++ b/src/main/java/frc/robot/readme.md @@ -0,0 +1,6 @@ +# Code Flow +1. [Main.java](Main.java) --> [Robot.java](Robot.java) --> [RobotContainer.java](RobotContainer.java) + 1. Setup Robot Config + 1. Setup Controls (Bindings) + 1. Setup Autonomous + \ No newline at end of file diff --git a/src/main/java/frc/robot/subsystems/vision/readme.md b/src/main/java/frc/robot/subsystems/vision/readme.md new file mode 100644 index 00000000..e2af4063 --- /dev/null +++ b/src/main/java/frc/robot/subsystems/vision/readme.md @@ -0,0 +1,3 @@ +# Useful Resources: +* [PhotonVision](https://docs.photonvision.org/en/latest/) +* [Crescendo 2024 Vision System Design](https://docs.google.com/document/d/1OyC_vcDjkND8d1BjjKcrntKLCYnFIfZ_LF4Lyaiwpdk) \ No newline at end of file