Zero to Robot

This guide takes you from setting up Systemcore to running a drivetrain program.

Start with assembly and wiring in Step 1, set up your editor in Step 2, configure the control system in Step 3, then write code and test the drivetrain in Step 4.

Assemble and wire your robot then configuring Systemcore. Step 1 links to the FRC assembly and wiring guides currently hosted here and to FTC Docs for FTC resources. Use instructions that match your hardware.

FTC teams using a REV Control Hub or Expansion Hub should use the FTC Docs for legacy hardware setup and programming.

Choose How You Will Program

Choose a programming environment and a language available for that platform. Keep those choices as you follow Steps 2 and 4.

Choice 1: Programming environment

OnBot Development

OnBot: Program in a Browser

Open the editor hosted by Systemcore from a browser. Choose Java, Blocks, Python, or LabVIEW.

Desktop Development

Desktop: Program on Your Computer

Write code on your computer. Use WPILib VS Code for Java, Blocks, C++, or Python, or choose desktop LabVIEW.

Choice 2: Programming language

Use the table to check which environments support your language. If your team already knows a language, start there. If you prefer visual programming, look at Blocks or LabVIEW.

Language

Style

OnBot

Desktop

Useful for

Notes

Java

Text, statically typed

✓

✓

Teams choosing a text-based language

Uses classes and explicit type declarations

Blocks (Blockly)

Graphical blocks

✓

✓

Teams new to programming or that prefer visual programming

Generates Python code

C++

Text

✗

✓

Teams that already know C++

Desktop development only

Python

Text

✓

✓

Teams already using Python

Uses indentation to group code

LabVIEW

Graphical (dataflow)

✓

✓

Teams with a LabVIEW background

Graphical programming

LabVIEW is available through OnBot and desktop development. C++ is available through desktop development only. Step 2 describes the environment you choose; the desktop LabVIEW installation walkthrough is still being completed.

Tip

New to programming? This guide introduces variables, objects, methods, and control flow as you build and test the robot. If you want a full course alongside the guide, try Codecademy Java or Python learning guides.

What You Need

FRC Hardware

FRC Robot Components
  • Systemcore controller

  • Power Distribution Hub (PDH) or Panel (PDP)

  • Vivid VH-109 Radio

  • Motor controllers (SPARK MAX, Talon FX, etc.)

  • Drive motors and wheels

  • 12 V robot battery and fuse

  • Ethernet cable and a USB cable that matches the Systemcore’s USB device port

FTC Hardware

FTC Robot Components
  • Systemcore + Motioncore controllers

  • FTC legal motor controllers

  • Drive motors and wheels

  • 12 V robot battery

  • USB-C cable for programming

  • Wi-Fi for wireless deploy

Software: (If Needed)

What Gets Installed

OnBot hosts the code editor on Systemcore. Install desktop programming tools if you choose desktop development. FRC teams also need the Driver Station.

  • WPILib: robot programming library + VS Code, for desktop development

  • FRC Driver Station: required for FRC teams. Runs on Windows, macOS, and Linux, but only the Windows version is competition legal

  • RobotPy: Python framework, for desktop Python teams

  • Vendor libraries (REVLib, Phoenix 6, etc.), installed per project

No Full Robot Yet?

Practice with the XRP

Practice reading sensors, controlling motors, and writing drive code on an XRP desktop robot before your competition robot is ready.

Getting Started with XRP

The Steps

Follow Steps 1 through 4 in order for the FRC VS Code walkthrough. Step 4 links to the drivetrain example and the first driving test. Use Troubleshooting when a connection, deployment, or motor test fails.

Some OnBot, Blocks, and FTC walkthroughs are still being completed. Those sections identify what is available and what is still coming.

Note

FTC teams: The Systemcore and Motioncore assembly and wiring walkthroughs are still being completed. Start with powering and connecting Systemcore (Step 1, Parts 2-3) and choosing your tools (Step 2). You can also practice WPILib programming with the XRP robot.

01

Build and Wire Your Robot

Wire the control system: power distribution, Systemcore, motor controllers, and radio.

Step 1: Build and Wire Your Robot

02

Set Up Your Environment

Set up the editor and language you chose above, and install the Driver Station for your robot.

Step 2: Set Up Your Environment

03

Configure Your Control System

Configure your Systemcore and radio. Required every season before you can deploy code.

Step 3: Configure Your Control System

04

Write and Drive

Create your first robot project, deploy code to the robot, and enable it with the Driver Station.

Step 4: Write and Drive
Something not working? Open Troubleshooting →

Diagnose power, networking, communication, code, controller, and motor problems during setup or whenever you test your robot.

Troubleshooting

Tips for New Teams

Tip

Get driving first

Wire one drive motor per side, deploy arcade drive, and make sure the robot responds before adding more mechanisms. This lets you test the controller, motor directions, and drive code separately.

Tip

Check the Driver Station log

When something goes wrong on the robot, open the Driver Station log viewer. Check connection events and reported errors to narrow down the problem.