Installation

If you are having trouble with installing any of the following, please feel free to reach out to veteran programming members on Discord.

Operating system

Make sure you’re on a 64-bit Windows version with an Intel or AMD CPU. All Windows 11 installations are 64-bit. If you’re on Windows 10, you can check this in the Control Panel:

  1. Click Start, type system in the search box, and, under Control Panel, click System.

Note

If System isn’t listed under Control Panel in the search results, click Control Panel to see more results.

  1. Under System, look at the System type entry. It will say either 32-bit Operating System or 64-bit Operating System.

Make sure you’re on a 64-bit (amd64 or arm64) distribution which uses glibc and was released in 2022 or later (which includes most popular distros such as Debian, Ubuntu, Mint, Arch, elementary OS, Fedora, Enterprise Linux, and SuSE).

Make sure you’re on macOS 12 or higher. Both Intel Macs and Apple Silicon Macs are supported.

Git

Our choice of project-management software is Git.

If you do not have it installed already, do so at its official website (select the 64-bit standalone installer). All the default options are fine, feel free to spam “next”.

Download git from your distribution. If you don’t know how to do that, please ask Ethan or Georgi.

On Debian, Ubuntu, Mint, and other distros that use apt or apt-get:

sudo apt install git

If you use Homebrew, run

brew install git

If you use MacPorts, run

sudo port install git

Otherwise, install Homebrew and then follow the Homebrew instructions.

GitHub CLI

Create a GitHub account (username doesn’t matter) or use an existing one. Send your username in the “GitHub Username” thread in #programming on Discord so I can add you to our organization. Afterwards, you need to login on your laptop. There are many ways but my most recommended is GitHub CLI.

Git login

When you install both Git and GitHub CLI, open a terminal window (preferably PowerShell or Bash) and type gh auth login. Select Github.com, HTTPS, Y, Login with a web browser, copy the 8 letter code and press enter. Paste your code on the web page and return back. You should be logged in.

(Only for pre-season) Java

There are many JDKs (Java Development Kits) available online but Temurin is a great option. Choose Temurin JDK 17 LTS (use the .msi installer).

Your distribution should have a JDK available to download. If not, you can use WPILib’s JDK by adding the following to your ~/.bashrc or other shell configuration file:

export PATH="$HOME/wpilib/2024/jdk/bin/:$PATH"
export JAVA_HOME="$HOME/wpilib/2024/jdk/bin/"

If you’re on Debian, Ubuntu, Mint, or some other apt-based distribution, you can install the system-recommended JDK using

sudo apt install default-jdk

You can use WPILib’s JDK by adding the following to your ~/.bash_profile and ~/.zprofile:

export PATH="$HOME/wpilib/2024/jdk/bin/:$PATH"
export JAVA_HOME="$HOME/wpilib/2024/jdk/bin/"

FRC Game Tools and WPILib

NI FRC Game Tools

Follow instructions in the official docs. It might say that you have a limited free trial but in reality it will never run out (similar to WinRAR).

WPILib

Follow the instructions in the official docs. When choosing the VSCode option, select standalone install. Java will be included, but if you already have it installed it shouldn’t interfere.

Please use my script to install these tools. Make sure that ~/.local/bin is on your $PATH.

To run the script, you must have a display (X11 or Wayland) and a network connection.

curl -o- -L https://raw.githubusercontent.com/ethanc8/FRCLinuxDevKit/master/install-online.sh | bash

If you also want to install the WPILib extension into your main VSCode or VSCodium installation, please set the environment variable FLDK_INSTALL_EXT_DESTINATION to the name of the command that launches VSCode (which is code for Microsoft binaries, code-oss if you compiled it yourself, and codium for VSCodium). For example:

curl -o- -L https://raw.githubusercontent.com/ethanc8/FRCLinuxDevKit/master/install-online.sh | FLDK_INSTALL_EXT_DESTINATION=code bash

This is super experimental, please tell Georgi and Ethan that you are trying this out if you do try it.

Please use my script to install these tools. Make sure that ~/.local/bin is on your $PATH.

To run the script, you must have a display and a network connection.

curl -o- -L https://raw.githubusercontent.com/ethanc8/FRCLinuxDevKit/macos/install-online.sh | bash

If you also want to install the WPILib extension into your main VSCode or VSCodium installation, please set the environment variable FLDK_INSTALL_EXT_DESTINATION to the name of the command that launches VSCode (which is code for Microsoft binaries, code-oss if you compiled it yourself, and codium for VSCodium; you must be able to run this command from your shell first). For example:

curl -o- -L https://raw.githubusercontent.com/ethanc8/FRCLinuxDevKit/macos/install-online.sh | FLDK_INSTALL_EXT_DESTINATION=code bash

PathPlanner

PathPlanner is the app we use to make our autonomous routines.

Install the app from Microsoft Store.

Download the zip and put it somewhere. Make sure you remember where you put it! I’ll eventually try to add it to the script, so that it can be put on your start menu etc.

Install the app from the App Store.

Phoenix Tuner X

Phoenix Tuner X is the diagnostics tool for CTRE devices (e.g. Falcon 500 motors). It is available on the Microsoft Store.

This is completely optional. It’s a kind of involved process, and isn’t useful unless you need to debug the motor controllers or other CTRE peripherals.

These instructions assume that you’re on a Debian/Ubuntu system and are currently in a Wayland session.

First, install the Android rootfs and userspace libraries:

sudo apt install curl ca-certificates -y
curl https://repo.waydro.id | sudo bash
sudo apt install waydroid -y
sudo waydroid init
waydroid prop set persist.waydroid.multi_windows true
waydroid session stop

Now, download and install Phoenix Tuner X:

wget https://github.com/ethanc8/someblobs/releases/download/phoenix-tuner-x-2024.6.1.0/Tuner.X_2024.6.1.0_apkcombo.com.apk
waydroid app install "./Tuner X*.apk"
waydroid app launch com.ctre.phoenix_tuner

Unfortunately, Phoenix Tuner X is currently not available for macOS.

REV Hardware Client

REV Hardware Client is the REV-specific diagnostics tool for REV devices (e.g. SPARK MAX). Follow installation instructions on its official page.

Unfortunately, REV Hardware Client is currently not available for Linux.

Unfortunately, REV Hardware Client is currently not available for macOS.

(Optional) Apache Maven

Install Apache Maven only if you are an experienced FRC programming member and wish to contribute to TitanAlgorithms. Make sure Maven is in your PATH.