Recent Updates

  • Updated on: Jul 17, 2017

    Creating your Benchtop Test Program

    The simplest way to create a robot program, is to start from one of the three supplied templates (Sample, Iterative or Command). Sample is best used for very small sample programs or advanced programs that require total control over program flow. Iterative Robot is a template which provides better structure for robot programs while maintaining a minimal learning curve. Command-Based robot is a template that provides a modular, extensible structure with a moderate learning curve.

    The templates will get you the basis of a robot program, organizing a larger project can often be a complex task. RobotBuilder is recommended for creating and organizing Command-Based robot programs. You can learn more about RobotBuilder here. To create a command-based robot program that takes advantage of all the newer tools look at Creating a Robot Project in the Command Based Programming Chapter.

  • Updated on: Jul 17, 2017

    Strategies for vision programming

  • Updated on: Jul 17, 2017

    Off Board Vision Processing in Java

  • Updated on: Jul 17, 2017


    The standard input device supported by the WPI Robotics Library is a USB joystick or gamepad. The Logitech Attack 3 joystick provided in the KOP from 2009-2012 comes equipped with eleven digital input buttons and three analog axes, and interfaces with the robot through the Joystick class. The Joystick class itself supports joysticks with more capabilities as well such as the Logitech Extreme 3D Pro included in the 2013 KOP which has 4 analog axes and 12 buttons. Note that the rest of this article exclusively uses the term joystick but can also be referring to a HID compliant USB gamepad.

  • Once commands are defined they can run in either the teleop or autonomous part of the program. In fact, the power of the command based programming approach is that you can reuse the same commands in either place. If the robot has a command that can shoot Frisbees during autonomous with camera aiming and accurate shooting, there is no reason not to use it to help the drivers during the teleop period of the game.

  • The 2015 Kickoff release of the FRC Driver Station has a bug that prevents the "C++" or "Java" dashboard settings from sticking across restarts of the DS software. To have the DS start the SmartDashboard when it starts up you have to manually modify the settings for the Default Dashboard.

  • Updated on: Jul 17, 2017

    Getting Started with the SmartDashboard

    The SmartDashboard typically runs on the Driver Station computer and will do two functions:

    1. View robot data that is displayed as program status as your program is running.
    2. View sensor data and operate actuators in Test mode for robot subsystems to verify correct operation.

    The switch between program status and test modes are done on the Driver Station.

  • Updated on: Jul 17, 2017

    Configuring an Axis Camera

    Three different Axis camera models are supported by the FRC software, the Axis 206, Axis M1011 and Axis M1013. This document provides instructions on how to configure one of these cameras for FRC use. To follow the instructions in this document, you must have installed the NI 2015 FRC Update Suite and Configured your radio

  • Updated on: Jul 17, 2017

    RoboRIO FTP

    The roboRIO has both SFTP and anonymous FTP enabled. This article describes how to use each to access the roboRIO file system.

  • Updated on: Jul 17, 2017

    RoboRIO User Accounts and SSH

    Note: This document contains advanced topics not required for typical FRC programming

    The roboRIO image contains a number of accounts, this article will highlight the two used for FRC and provide some detail about their purpose. It will also describe how to connect to the roboRIO over SSH.