Setup
Setup Options
There are 2 available setup methods:
-
Quick-Start Repository: zero-code process that gets you started from a new FTC Repo which is ready to run. This is recommended for beginner to intermediate teams which are not looking into bringing their existing code as-is to the new repository.
-
In-Place Update: add Pond library reference to your existing code. This is recommended for advanced teams who wants to be selective about how to integrate and which functionality to depend on.
Tip: The 2 setup methods allow you to reach the same result as the Pond library is always used as a library reference. The only difference is the path to get there. In other words, no matter which way you chose to start, both methods allow for the same result in the end.
Option 1: Quick-Start Repository
Recommendation: This is the recommended way to get started as it is the fastest and allows you to evaluate the library functionality with little to no effort. Moreover, in this way your can easily setup a separate repository aside from your current project, thus allowing you to evaluate it without making any changes to your current project.
Clone the Repository (for evaluation)
From Android Studio
- Install Android Studio from https://developer.android.com/studio
- Open Android Studio and choose ‘Clone Repository’
- Give the repository URL:
https://github.com/FTC-23206/automaducks-pond-starter.git
From Command Line
- Install git from https://git-scm.com/downloads
- Open
Command Prompt
orTerminal
and navigate to the desired repository location -
Clone the Pond-Starter repository:
git clone https://github.com/FTC-23206/automaducks-pond-starter.git
- Open the the root of the repository with Android Studio
Change the configuration to match your robot configuration
- Use FTC Dashboard to try the correct configuration
- Connect your computer to your robot wifi
- Open http://192.168.43.1:8080/dash on web browser
- Configure
Chassis
motors to match your robot hub configuration - Run the robot drive operation and verify it runs correctly (see section below for configuration troubleshooting)
- Once you have the correct configuration, update the code to match your temporary configuration
Motors Configuration Troubleshooting (Pending)
Fork the repository (Make it your own!)
Once you have decided to continue on this path you should fork the repository so you can continue developing on your own team repository:
- Sign-in to Github
- Open https://github.com/FTC-23206/automaducks-pond-starter
-
Click on Fork and provide the requested information (make sure you are making the fork to your Team organization or your own account)
- Clone your own repository so you can continue to make changes to your robot project.
Option 2: In-Place Update
Add the Pond package reference (Required)
- Make sure your
TeamCode
project successfully builds in Android Studio (F7
) -
Add the following to your Team Code gradle file File:
(RepositoryRoot)\TeamCode\build.gradle
dependencies { implementation project(':FtcRobotController') // Pond Library Reference implementation 'com.automaducks:pond:0.9.0' }
- Sync the project with gradle files (
CTRL+SHIFT+O
) - Rebuild
TemCode
project (F7
)
After a successful build, you are ready to start leveraging the Pond libraries.
Add FTC Dashboard and Road Runner (Recommended)
This is not require but Pond is made to work well with FTC dashboard as it can leverage dynamic configuration changes and graphing.
-
Similar to the above, update your Team Code
build.gradle
per below:// // build.gradle in TeamCode // // Most of the definitions for building your module reside in a common, shared // file 'build.common.gradle'. Being factored in this way makes it easier to // integrate updates to the FTC into your code. If you really need to customize // the build definitions, you can place those customizations in this file, but // please think carefully as to whether such customizations are really necessary // before doing so. // Custom definitions may go here // Include common definitions from above. apply from: '../build.common.gradle' apply from: '../build.dependencies.gradle' android { namespace = 'org.firstinspires.ftc.teamcode' packagingOptions { jniLibs.useLegacyPackaging true } } repositories { maven { url = 'https://maven.brott.dev/' } } dependencies { implementation project(':FtcRobotController') // Pond implementation 'com.automaducks:pond:0.9.0' // ACME Libraries implementation 'com.acmerobotics.roadrunner:core:1.0.1' implementation 'com.acmerobotics.dashboard:dashboard:0.4.16' }
- Sync the project with gradle files (
CTRL+SHIFT+O
) - Rebuild
TemCode
project (F7
)