The Spartabots' main outreach bot. Shoots a yoga ball and controlled with a dancepad.
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.vscode
.wpilib
gradle/wrapper
src/main Control robot through Shuffleboard Jan 28, 2019
vendordeps Rewrite all code for 2019 project structure Jan 17, 2019
.classpath
.gitignore Rewrite all code for 2019 project structure Jan 17, 2019
.project Rewrite all code for 2019 project structure Jan 17, 2019
LICENSE.txt Create LICENSE.txt Jul 6, 2018
README.md
build.gradle
gradlew Rewrite all code for 2019 project structure Jan 17, 2019
gradlew.bat Rewrite all code for 2019 project structure Jan 17, 2019
settings.gradle Rewrite all code for 2019 project structure Jan 17, 2019

README.md

Yoga Ball Bot

The Spartabots' FRC robot code for our main outreach bot.

Bot

The drive train is controlled by four Victors.
The arm is controlled by controlled by four CANTalons.
The roller is controlled by one Victor.

Dancepad

Since this is an outreach bot, our "joystick" is a dancepad that looks like this:

| sel | sta |
| × | ↑ | O |
| ← |   | → |
| Δ | ↓ | □ |

The cross (×) rolls the ball in.
The triangle (Δ) rolls the ball out.
The circle (O) raises the arm (shoots the ball).
The square (□) lowers the arm.

Dashboard

We use ShuffleBoard for our dashboard. It has buttons and sliders for enabling and adjusting drive and shooter speed.

ShuffleBoard for the Yoga Ball Bot

Setup

  1. Install the NI Update Suite and the WPILib Development Tools (+VS Code) (Instructions)
  2. Install the libraries we use (CTRE Phoenix and NavX).
  3. Make a new WPILib Java project and clone this repository

Libraries

We use only one 3rd party library:

Contributing

  • Commit your changes to a feature branch, not to master, especially if it is untested
  • Write good commit messages
    • Written in sentence case (only first word capitalized)
    • Should complete the sentence: "If applied, this commit will [Your commit message]."
  • Make sure each of your methods has a Javadoc comment and you comment liberally
  • Maintain a consistent code style